Programowanie w systemie UNIX/Kodowanie: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
m nie uzywamu poziomu 1 w art
Linia 9:
** pozwala na otwarcie w edytorze tekstu
 
==Typy ==
Podział klasyczny
* prosty tekst (ang. plain text) - niesformatowany
Linia 146:
 
 
===csv===
 
Przykładowy csv<ref>[http://manas.tungare.name/software/csv-to-ical/ CSV to iCal Calendar Convertor by Manas Tungare]</ref>, który może być zaimportowany do kalendarza:
Linia 156:
</pre>
 
===pliki konfiguracyjne===
 
Biblioteka
* TOML ( Tom's Obvious Minimal Language) -A config file format for humans<ref>https://toml.io/en/</ref>
 
===Grafika ASCI===
Grafika ASCI ( [[:w:ASCI-Art|ASCI-Art]])
<pre>
Linia 180:
</pre>
 
===ical===
 
 
Linia 206:
* gcalcli <ref>[https://github.com/insanum/gcalcli gcalcli library]</ref>
 
== Budowa ==
Prosty plik tekstowy:<ref>[[w:Plik tekstowy|Plik tekstowy]]</ref>
* składa się ze znaków
Linia 221:
* [[Programowanie_w_systemie_UNIX/Kodowanie#BOM|BOM]] <ref>[http://codesnipers.com/?q=node/68 How to Determine Text File Encoding Submitted by Ben Bryant]</ref>
 
==Kodowanie==
Co każdy programista powinien wiedzieć o
* kodowaniu wg Davida C. Zentgrafa <ref>[http://kunststube.net/encoding/ What Every Programmer Absolutely, Positively Needs To Know About Encodings And Character Sets To Work With Text by David C. Zentgraf ]</ref>
* zestawach znaków wg Joel Spolsky<ref>[https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/ the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses by Joel Spolsky]</ref>
 
===Kod alfanumeryczny===
Kod alfanumeryczny (ang. alphanumeric code) – kod, w którym do zapisu tekstów i liczb, przedstawianych jako ciągi cyfr, używa się określonych w danym kodzie znaków
 
===Standardy kodowania===
 
Standardy:
Linia 247:
* progam kodujący (ang. Character Map ) - graficzny program pokazujący znak dla odpowiedniego kodu i odwroitnie w różnych standardach kodowania
 
===Dekodery ===
Dekoder znaków (ang. char) czyli jak sprawdzić znak?
* online
Linia 271:
** w konsoli
 
====Jak sprawdzić kodowanie pliku w konsoli ? ====
 
Sprawdzanie za pomocą komendy file ( nazwa pliku i wynik przykładowe) :
Linia 307:
Lub za pomocą edytora binarnego , np. beav, Jeex<ref>[http://www.hds619.net/index.php?ref=projects&sub=jeex Jeex]</ref> lub Okteta.<ref>[https://utils.kde.org/projects/okteta/ Okteta - edytor plików binarnych]</ref>
 
===Typowe problemy ===
* kopiowanie i wklejanie powoduje że, [[C/Używanie_kompilatora#Inne_b.C5.82.C4.99dy | zamiast oczekiwanego znaku otrzymujemy inny]] (zamiast minusa ...) .
* oznaczenie końca pliku ( EOF )<ref>[http://stackoverflow.com/questions/12389518/representing-eof-in-c-code stackoverflow question representing-eof-in-c-code]</ref>
Linia 314:
** translacja z różnych języków
 
==Znaki==
[[Plik:UnicodeGrow2b.png|mały|prawo|Najczęściej używane standardy kodowanie występujące w sieci]]
 
Linia 356:
 
 
===Znaki drukowalne===
 
 
Linia 416:
 
 
===== Dywiz =====
Standard ASCII przewidywał wspólny znak dla:
* łącznika
Linia 457:
można uzyskać przez kombinację miękkiego łącznika i łącznika niełamiącego.
 
===Znaki niedrukowalne ===
* znaki specjalne <ref>[http://stackoverflow.com/questions/1373463/handling-special-characters-in-c-utf-8-encoding Handling special characters in C (UTF-8 encoding)- stackoverflow]</ref>
 
Linia 465:
 
 
====Wyświetlanie znaków niedrukowalnych====
* online<ref>[https://www.soscisurvey.de/tools/view-chars.php soscisurvey : view-chars]</ref>
* w konsoli<ref>[http://www.commandlinefu.com/commands/view/11486/bash-function-to-highlight-non-printing-characters-tab-newline-bom-nbsp bash function to highlight non-printing characters: tab, newline, BOM, nbsp]</ref> <ref>[https://datacadamia.com/lang/bash/whitespace datacadamia : bash whitespace]</ref>
Linia 497:
lub otworzyć w LibreOffice Writer i zaznaczyć opcję pokaż Menu/Widok/Znaczniki formatowania<ref>https://www.obliczeniowo.com.pl/794</ref>
 
=====cat =====
 
cat -t -e p.txt
Linia 510:
* końcówki linii jako $
 
====BOM====
Unicode Byte-Order-Marker (BOM)<ref>[[w:BOM_(informatyka)|BOM w wikipedii]]</ref>
 
Linia 640:
 
printf("\xef\xbb\xbf");
====EOL====
'''Koniec linii''' (ang. ''End Of Line, EOL'') – znak lub sekwencja znaków oznaczająca zakończenie linii tekstu.
 
Linia 658:
 
 
====EOF====
 
znakiem końca pliku (EOF)<ref>[[w:EOF|EOF w wikipedii ]]</ref>.
 
==info o pliku ==
* [[Programowanie w systemie UNIX/wc|wc]]
 
 
 
===String czyli łańcuchy znaków===
* [https://hackernoon.com/what-every-programmer-should-know-about-string-a6611537f84e What every programmer should know about ‘String’ by Ahmed shamim hassan]
* [https://www.nayuki.io/page/knuth-morris-pratt-string-matching knuth-morris-pratt-string-matching by Nayuki]
 
 
====Dzielenie łańcuchów na słowa ====
* [[Bash#Łańcuchy,znaki_i_tekst|Bash Łańcuchy, znaki i tekst]]
** [[Bash#Dzielenie_słów|Bash : Dzielenie_słów]]
 
===Wczytywanie danych z pliku - parser===
* [https://github.com/orangeduck/mpc mpc - A Parser Combinator library for C by Daniel Holden]
 
 
==Zobacz również==
* [[Programowanie w systemie UNIX/imagemetadata|Dane tekstowe w obrazach (metadata)]]
* [[:w:en:Zalgo text|Zalgo text w ang wikipedii]]