Πέμπτη 10 Δεκεμβρίου 2015

Συνάρτηση Μήκος.Εμφ() - Αναθ. 110 - και άλλα!

Μια γρήγορη αναθεώρηση...με εμπλουτισμό της συνάρτησης Μήκος.Εμφ()  Len.Disp() που μας δίνει πόσες θέσεις χαρακτήρων χρειάζονται, όχι πόσα γράμματα έχει!

Στην Μ2000 τα γράμματα έχουν μήκος δυο bytes. Όμως ο διορθωτής και η εισαγωγή γραμμής μπορούν να χειριστούν τα diacritical marks, τα οποία είναι Non space δηλαδή δεν θέλουν χώρο στη εμφάνιση.
Η χαρκωδ$() δίνει το χαρακτήρα για αριθμό Unicode. (2 Bytes).
χαρκωδ() δίνει τον αριθμό για χαρακτήρα που δίνουμε
Η Δεκαεξ είναι η Τυπωσε με εξαγωγή σε δεκαξαδικό
To 0xFF είναι το 0χFF ή το 255  (ανά δυο γράμματα έχουμε ένα byte, μέγιστο 8 γράμματα, 4 Byte, 32bit).

Τέλος και παράδειγμα μεταβλητής με περισπωμένη!

\\ το α$ έχει δυο χαρακτήρες το α και τον 0χ301 ή 769 στο δεκαδικό
\\ στο διορθωτή ή στην γραμμή εντολών το περνάμε με alt 769 ή με alt + 301
\\ Υπάρχουν χαρακτήρες με τόνους μαζί αλλά υπάρχει όπως εδώ ο τόνος ή σημάδι
\\ να είναι ξεχωριστός και να μπαίνει από πάνω!
α$="ά"
περισπωμένη$=χαρκωδ$(0χ303)

Δεκαεξ χαρκωδ(περισπωμένη$)
\\ Οπότε εδώ ως μήκος αλφαριθμητικού παίρνουμε το 2
\\ Αλλά ως μήκος εμφάνισης παίρνουμε το 1
Τύπωσε μήκος(α$), μήκος.εμφ(α$)
Τύπωσε "Γιω̃ργος"
Τύπωσε "Γιω"+περισπωμένη$+"ργος"
\\ Μπορούμε να φτιάξουμε μεταβλητές με πρόσθετους τόνους
Γιω̃ργος=100
Τύπωσε Γιω̃ργος


Τα παραδείγματα εξάγονται με αντιγραφή από το διορθωτή ως html, σε UTF8 και τα επικολλώ εδώ. Έτσι δεν χάνουμε τους χαρακτήρες Unicode
Αν το τμήμα πάνω είναι το Α (π.χ. έγραψα Σ Α και αντέγραψα τον κώδικα παραπάνω) μπορώ με:

Σώσε Α \\να το σώσω στο φάκελο χρήστη (σώνεται σε utf-8) και μπορώ να το ανοίξω όποτε θέλω με Φόρτωσε Α  (δεν χρειάζεται εισαγωγικά, εκτός και αν θέλουμε να βάλουμε διαστήματα)

Σύστημα Κατ$ \\ανοίγω τον explorer με τον φάκελο χρήστη
Τμήματα  \\ ή Ctrl+M βλέπω τι έχω από τμήματα στο φάκελο χρήστη και στο περιβάλλον φορτωμένα


Τμήματα ? \\ ή Ctrl+Ν βλέπω τι έχω από τμήματα στο περιβάλλον φορτωμένα


Διαγραφή   \\  Διαγράφω το τελευταίο τμήμα


Σ αλφα ως βητα \\ κάνω μετονομασία φορτωμένου τμήματος


Όνομα αλφα ως βητα \\κάνω αλλαγή ονόματος στο δίσκο



Δεν υπάρχει άμεση διαγραφή. Ένας τρόπος είναι η εντολή που μας δίνει το φάκελο του χρήστη στον explorer. Η εντολή δεν τρέχει αν έχουμε ορίσει χρήστη (δηλαδή μαθητή).
Το χειρότερο που μπορεί να γίνει σε επίπεδο χρήστη είναι ο κακόβουλος χρήστης να ανοίξει ένα αρχείο με το ίδιο όνομα, άρα το σβήνει. Αλλά εξ ορισμού αρχεία μπορεί να ανοίξει μόνο στο φάκελο χρήστη και σε φακέλους μέσα σε αυτόν. Και αφού δεν μπορεί να το σβήσει, πάντα θα φαίνεται η ώρα αλλαγής!
Υπάρχει η στάμπα (file.stamp()) , δηλαδή η χρονοσήμανση
Μπορούμε να τη διαβάσουμε, να εξάγουμε την ώρα, την ημέρα ή και τα δύο με μια εντολή!

α= Αρχείου.Στάμπα("α.gsb")
Τύπωσε χρόνος$( α), ημέρα$(α)
Τύπωσε γραφη$(α,"YYYY+MM+DD+HH+MM+SS")


Και κάτι επιπλέον για σήμερα:
Χρήση αλφαριθμητικών με κείμενα. Το Β$ έχει αλλαγή γραμμής. Η αναφορά τυπώνει κείμενα. Εδώ βάζουμε δεξί περιθώριο 7 χαρακτήρων και αριστερό επτά χαρακτήρων.
Το Διάστιχο είναι σε twips (ανά 30 twips)
Η φόρμα αν δεν οριστεί το ύψος λαμβάνει το διάστιχο και το πλάτος σε χαρακτήρες και βγάζει ένα αποτέλεσμα, μια οθόνη στο πλάτος που ζητάμε. Το πόσες γραμμές μας δίνει το διαβάζουμε με την Ύψος. (πλάτος για το πλάτος, και στήλη για το πλάτος στήλης)

 Ίσως χρειαστεί η εντολή Γραμματοσειρά "Arial" πιο πριν για να εμφανιστούν όλα τα γράμματα (είδα ότι το Ἡ και άλλα γράμματα στην Verdana δεν εμφανίζονται).
Στις Tahoma και Times οκ
Εδώ οι τα γράμματα είναι απ' ευθείας με τόνους και πνεύματα από τη γραμματοσειρά και όχι συνδυασμός.


Τίτλος$={Γενικοὶ κανόνες τονισμοῦ
}
Α$={Ἡ προπαραλήγουσα παίρνει ὀξεία: ἥσυχος, εἴπαμε, ἀνήφορος, πήγαμε.
      Ἡ βραχύχρονη συλλαβὴ παίρνει ὀξεία: ἔλα, ὅλα, βουνό, μέρος.
      Ἡ παραλήγουσα παίρνει ὀξεία, ὅταν ἡ λήγουσα εἶναι μακρόχρονη: καρφώνω, κλείνει, πήχη.
      Ἡ μακρόχρονη παραλήγουσα παίρνει περισπωμένη, ὅταν ἡ λήγουσα εἶναι βραχύχρονη: μῆλο, ξυπνῆστε, δῶσε, ἀγαποῦμε, ναῦτες, θυμοῦνται, ὦμοι, τοῖχοι.
      Δὲν ἀκολουθοῦν τὸν κανόνα καὶ παίρνουν ὀξεία οἱ λέξεις: ὥστε, οὔτε, μήτε, εἴτε, εἴθε.
      Λογαριάζονται ὅτι τονίζονται στὴν προπαραλήγουσα καὶ οἱ λέξεις ποὺ ἔχουν καταχρηστικὸ δίφθογγο στὴ λήγουσα. Γι᾿ αὐτὸ παίρνουν ὀξεία λέξεις καθώς: καινούριος, κούφιος, κούνιες, ποτήρια.
      }
Β$={
}
Διάστιχο 60
Φόρμα 80
Τύπωσε επαν$(" ",7);
Φαρδια 1
Αναφορά Τίτλος$, πλάτος-14
Φαρδια
Αναφορά Α$, πλάτος-14
Αναφορά Β$, πλάτος-14
Πλάγια 1
Αναφορά Τίτλος$, πλάτος-14
Πλάγια
Αναφορά Α$, πλάτος-14


 Η περισπωμένη εδώ πέρασε με alt "+" 303



Ρυθμίσεις

Και εδώ το κείμενο φορμαρισμένο (δεν έχω βάλει εδώ το πώς μετράμε τις γραμμές πριν δώσουμε την εμφάνιση αυτών, και το πώς επιλέγουμε γραμμές από το φορμαρισμένο για εκτύπωση.)
δείτε παράδειγμα με μέτρημα φορμαρισμένων γραμμών πριν τυπωθούν
http://georgekarras.blogspot.gr/2015/11/97.html



Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου

You can feel free to write any suggestion, or idea on the subject.