» »

Windows bo znal pravilno brati Linuxove besedilne datoteke

Windows bo znal pravilno brati Linuxove besedilne datoteke

Tega ne bo več

Microsoft - Ena izmed stvari, ki jih Windows počne pravilneje od Linuxa in MacOS-a, je zaključevanje vrstic v tekstovnih datotekah. Ironično je prav to razlog, da v privzetem urejevalniku golega besedila Beležnici tekstovne datoteke teh dveh operacijskih sistemov niso videti lepo. V Beležnici je vsebina teh datotek stisnjena v eno vrstico. Razlog je nekompatibilnost znakov za novo vrstico. In to se bo v novi verziji Windows z novo Beležnico spremenilo.

Na pisalnih strojih je bilo treba za prehod v novo vrstico storiti dvoje. Treba se je bilo premakniti na začetek vrstice, kar označuje ukaz CR (carriage return), potem pa je bilo treba papir prestaviti za eno vrstico, kar stori ukaz LF (line feed). Zato Beležnica in Windows nasploh še danes vrstice zaključujeta s tema ukazoma - na koncu vrstice v tekstovnih datotekah mora stati CRLF. V Linuxu (in ostalih izpeljankah Unixa) se vrstice zaključujejo le z LF, zaradi česar Windows teh datotek ne prebere pravilno. In obratno, datoteke iz Windows se Linuxu včasih zataknejo. Nasprotno pa klasičen MacOS uporablja za oznako nove vrstice izključno CR. Najbolj prav ima v tem primeru Windows, če upoštevamo zgodovino teh ukazov, a to nam nič ne pomaga, če so datoteke prikazane razsuto.

Zato bo nova Beležnica v Windows odslej razumela tudi LF ali CR kot prehod v novo vrstico. Privzeta možnost za nove datoteke bo še vedno CRLF, bo pa Beležnica razumela tudi druge možnosti in jih pri urejanju ohranjala.

Na prvi pogled gre za majhno spremembo, zlasti ker za resno delo tako ali tako malokdo uporablja Beležnico. Tudi v Windows so namreč na voljo številne zmogljivejše alternative, denimo Notepad++. Toda - gre za pomemben simbolni korak, ki kaže, da se Microsoft zaveda čedalje večje vloge Linuxa in uporabnikom prihaja naproti. Spomnimo, da je Windows dobil tudi bash in podsistem za Linux.


48 komentarjev

filip007 ::

Lepo, kar tako naprej.
Trevor Philips Industries

WhiteAngel ::

Pohvalno! Kaj je naslednje? Native podpora za ext4 in btrfs datotecne sisteme?

Voluharr ::

Rajši zfs :P

starfotr ::

Napaka. Na napačnem koncu se lotevajo zadev. Tisti, ki ima napako, naj naredi, da bo prav,torej odpravi napako. . Linux naj uredijo. Kot brskalniki vsa živa skropucala prikazujejo, namesto, da bi bili striktni pri HTMLju.

StarMafijec ::

Torej oznaka za novo vrstico je lahko CR, LF in CRLF. Nikakor pa ne LFCR.

opeter ::

Jaz sem zadovoljen z Notepad++.
Hrabri mišek (od 2015 nova serija!) -> http://tinyurl.com/na7r54l
18. november 2011 - Umrl je Mark Hall, "oče" Hrabrega miška
RTVSLO: http://tinyurl.com/74r9n7j

poweroff ::

Ne vem, ampak meni Gedit v Linuxu vse vedno odpre pravilno.

Kaj bo naslednje?

MS Office za Linux? :))
sudo poweroff

Invictus ::

Saj je že.

Reče se mu office365 ;).

Glede na to, da pa MS vedno bolj teži k Linuxu, lahko pričakujemo najbrž 1x Windows GUI za Linux :P.
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

eVro ::

Spotoma opazim, da se ima pisec novice kar za referenco, kako bi se vrstice morale zaključevati. In to brez razlage!

user1618 ::

Nekoč pred mnogimi leti sem imel priložnost programirati vmesnik za iglični tiskalnik: takrat se je jasno vedelo, kaj naredi komanda CR in kaj naredi LF. Windows je ostal temu zvest.
"If we were supposed to talk more than listen
we would have been given two mouths and one ear"
- Mark Twain

Jst ::

>Pohvalno! Kaj je naslednje?

Končno po MNOGIH letih Windows Command Reference PDF!!!

http://bit.ly/2IpeszH

948 strani!


---

>Nekoč pred mnogimi leti sem imel priložnost programirati vmesnik za iglični tiskalnik

Jaz pa nazadnje tiskanje računov (ala Mercator, Petrol,...).
Islam is not about "I'm right, you're wrong," but "I'm right, you're dead!"
-Wole Soyinka, Literature Nobelist
|-|-|-|-|Proton decay is a tax on existence.|-|-|-|-|

krneki0001 ::

Jst je izjavil:

Končno po MNOGIH letih Windows Command Reference PDF!!!

http://bit.ly/2IpeszH

948 strani!


Kako končno. To je že nekaj časa zunaj. Ta pdf ima samo novo dodane zadeve.
Asrock X99 Extreme 4 | Intel E5-2683V4 ES | 64GB DDR4 2400MHz ECC |
Samsung 250GB M.2 | Asus 1070 TI | 850W Antec | LC Tank Buster

Netrunner ::

In to jim je uspelo že leta 2018 ... BRAVO !!
Doing nothing is very hard to do... you never know when you're finished.

win64 ::

Novica bi morala biti, da notepad zna prebrati druge konce vrstic.
Wordpad(tudi vgrajen v windows) recimo to zna že od nekdaj(ali pa vsaj precej časa).

G-man ::

To da je Notepad dobil funkcionalnost, ki se je ne potrebuje zaradi Windows, je dokaz, da je imel Ballmer prav: Linux je res kot rak, ki se zažira v softver. Sicer benigen, ampak vseeno rak [:-)]

link_up ::

hehe, gedit je res tolk fajn...slim, fast and pretty useless! :) Ampak dela pa coloring :D
In and Out

bbf ::

StarMafijec je izjavil:

Torej oznaka za novo vrstico je lahko CR, LF in CRLF. Nikakor pa ne LFCR.


Actualy, če je kdo kdaj že videl pisalni stroj, iz katerega zadeva izhaja, oni delajo LF CR.

carota ::

Ne, ni prav, da se uporablja tehnologijo pisalnega stroja v 21. stoletju. Morali bi uporabljati tisto iz luknjanih kartic!

Avtor novice bi lahko navedel tudi zakaj so drugi sistem izbrali drugačen zaključek vrstice preden sklepa, da ima Windows prav. Ne pa slepo sodil.

Če je že kdo pisal na pisalnem stroju, bi vedel da naredi najprej LF (premakne vrstico gor) in nato porine cel valj ročno v novo vrstico, CR. Torej LFCR. Microsoft dela narobe!

Zgodovina sprememb…

  • spremenil: carota ()

win64 ::

carota je izjavil:

Ne, ni prav, da se uporablja tehnologijo pisalnega stroja v 21. stoletju. Morali bi uporabljati tisto iz luknjanih kartic!

Avtor novice bi lahko navedel tudi zakaj so drugi sistem izbrali drugačen zaključek vrstice preden sklepa, da ima Windows prav. Ne pa slepo sodil.

Če je že kdo pisal na pisalnem stroju, bi vedel da naredi najprej LF (premakne vrstico gor) in nato porine cel valj ročno v novo vrstico, CR. Torej LFCR. Microsoft dela narobe!


Iz wikipedie:
Most textual Internet protocols (including HTTP, SMTP, FTP, IRC, and many others) mandate the use of ASCII CR+LF ('\r\n', 0x0D 0x0A) on the protocol level, but recommend that tolerant applications recognize lone LF ('\n', 0x0A) as well. Despite the dictated standard, many applications erroneously use the C newline escape sequence '\n' (LF) instead of the correct combination of carriage return escape and newline escape sequences '\r\n' (CR+LF) (see section Newline in programming languages below). This accidental use of the wrong escape sequences leads to problems when trying to communicate with systems adhering to the stricter interpretation of the standards instead of the suggested tolerant interpretation. One such intolerant system is the qmail mail transfer agent that actively refuses to accept messages from systems that send bare LF instead of the required CR+LF.[3]

Baja ::

pri MS so butalci. zakaj hudiča bi mel dva znaka za novo vrstico, če za to ni nobene potrebe!?!

če bi MS piso prometno zakonodajo bi še danes pešci pred avto hodli.

filipk ::

carota je izjavil:


Avtor novice bi lahko navedel tudi zakaj so drugi sistem izbrali drugačen zaključek vrstice preden sklepa, da ima Windows prav. Ne pa slepo sodil.

+1

McHusch naj bi izjavil:


In obratno, datoteke iz Windows se Linuxu včasih zataknejo.

Možno, a tega se v zadnjih slabih dveh desetletjih uporabe ne spominjam. In povrhu je to hrošč, ne pa sistemska ignoranca, ki se jo je zaradi želje po drugačnosti šel MS.
Še en tak primer je tudi črkovno kodiranje. Večina ostalih že davno privzeto uporablja UTF, oni pa še vedno podpirajo zmešnjavo, ki so jo (pomagali) ustvariti že davno nazaj.

LightBit ::

link_up je izjavil:

hehe, gedit je res tolk fajn...slim, fast and pretty useless! :) Ampak dela pa coloring :D

"fast"?
Izgleda, da odpiraš majhne datoteke.

poweroff ::

Invictus je izjavil:

Glede na to, da pa MS vedno bolj teži k Linuxu, lahko pričakujemo najbrž 1x Windows GUI za Linux :P.

Saj to je tudi že. Reče se mu Ubuntu. :))

user1618 je izjavil:

Nekoč pred mnogimi leti sem imel priložnost programirati vmesnik za iglični tiskalnik: takrat se je jasno vedelo, kaj naredi komanda CR in kaj naredi LF. Windows je ostal temu zvest.

Jah, saj. Predpotopna tehnologija (Wintendo). >:D

link_up je izjavil:

hehe, gedit je res tolk fajn...slim, fast and pretty useless! :) Ampak dela pa coloring :D

Za moje potrebe je kar uporaben. Tudi za malo večje datoteke odpirat. Pred leti, ko sem bil še na Windowsih, sem si tam namestil Windows različico Gedita. Kot da bi parkiral Ferarija v geto. Zlasti iskanje (regexp) je delalo super.
sudo poweroff

Barbarpapa2 ::

Pozdrav

Ozdaje tega neskladja je združljivost za nazaj. Linux je sledil UNIX-ov "standard", Windows pa DOS ali pa še kaj starejšega. Točno definiran prehod v novo vrstico ni pravzaprav nikoli bil. Zanimivo branje:

Newline @ Wikipedia

...pa sta si dve vesolji spet malo bližje :))

LP

Jože

jype ::

Komu se zdi\n
           narobe, da je po vsakem LF\n
                                     tudi impliciten CR?

bbbbbb2015 ::

user1618 je izjavil:

Nekoč pred mnogimi leti sem imel priložnost programirati vmesnik za iglični tiskalnik: takrat se je jasno vedelo, kaj naredi komanda CR in kaj naredi LF. Windows je ostal temu zvest.


Nekoč pred mnogimi leti (in to je več kot pred tvojimi mnogimi leti) sem programiral izpis na Convex C220 super računalniku in se je točno vedelo, kaj LF povzroči:

Newline @ Wikipedia

Takrat je Bill Gates še na debelo študiral, kak bi IBM vturil svoj DOS. O kvaliteti pa ne bi.

jype je izjavil:


Komu se zdi\n
narobe, da je po vsakem LF\n
tudi impliciten CR?


Verjetno Kitajcem, Korejcem in Perzijcem. Vsi ostali pa skočimo na začetek leve strani in pišemo tekst z leve proti desni.

Razen moj profesor na faksu za matematiko (FERI v Mariboru). On je imel fobijo, če mu nismo table zbrisali med odmori, je znal pisati z desne nazaj proti levi, navzgor ali navzdol ali pa kar pod nekim arbitrarnim kotom.

In nam je implicitno dal na znanje, da nekdo naj vseeno blagovoli tablo zbrisati med odmori.

Zgodovina sprememb…

boolsheat ::

starfotr je izjavil:

Napaka. Na napačnem koncu se lotevajo zadev. Tisti, ki ima napako, naj naredi, da bo prav,torej odpravi napako. . Linux naj uredijo. Kot brskalniki vsa živa skropucala prikazujejo, namesto, da bi bili striktni pri HTMLju.


Tu je res napaka... Unix sistemi bo moralo popraviti svoj bug, ne pa, da se dela nadaljna podpora za ta bug.

jype ::

boolsheat je izjavil:

Tu je res napaka... Unix sistemi bo moralo popraviti svoj bug, ne pa, da se dela nadaljna podpora za ta bug.
Unix ni napisan za pisalne stroje.

Če hočeš imeti ločen kontrolni znak za to da ročico pri pisalnem stroju zgolj malenkostno premakneš (da se valj obrne za eno vrstico) ali popolnoma (da z njo valj prestaviš tudi na začetek naslednje vrstice), potem razumem tvojo frustracijo.

Večina nas po slo-techu ne brska s pisalnimi stroji.

AndrejO ::

bbf je izjavil:

StarMafijec je izjavil:

Torej oznaka za novo vrstico je lahko CR, LF in CRLF. Nikakor pa ne LFCR.


Actualy, če je kdo kdaj že videl pisalni stroj, iz katerega zadeva izhaja, oni delajo LF CR.

Večina jih je res LFCR zaradi praktičnosti, sem pa imel tudi takšnega, ki je imel ročko tako trdo, da sem najprej porinil cel valj na desno, potem pa šele premaknil za vrstico navzgor. Če sem želel narediti nekaj v stolpcih, je na njemu morala peti preslednica. Nežen dotik ni pomagal.

Ta, ki ga imam sedaj, je normalen LFCR.

Barbarpapa2 ::

Pozdrav

Da malo temo na stranpoti speljem :)). bbbbbb2015, o katerem profesorju je govora? In printer je verejtno bil linijski, ali?

LP

Jože

bbbbbb2015 ::

Barbarpapa2 je izjavil:

Pozdrav

Da malo temo na stranpoti speljem :)). bbbbbb2015, o katerem profesorju je govora? In printer je verejtno bil linijski, ali?

LP

Jože


dr. Lešnjak. Saj še zdaj uči. Jaz upam, da tablo mu brišejo. Zelo blag in sploh super profesor. Samo ko je zelo vljudno prosil, da se mu tabla zbriše, ni vstal od 60 študentov nihče. Tam sem se naučil nekaj zelo pomembnega - da lepa beseda vedno svoje mesto najde - je čista urbana legenda.

Kaj je bilo za printerja, se pa res ne bi spomnil. To je bil črno-zlat Convex superračunalnik. Printerji pa mislim, da so bili DEC. To original ni bil Convex, takrat pa so imeli kup VAXov.

Zgodovina sprememb…

Barbarpapa2 ::

Pozdrav

Zanimivo tole, sploh ker so printerji bili DEC-ovi. Koliko se spomnim, je bil DEC-ov printer na Tehniški fakulteti Takrat (druga polovica 80-tih) v MB linijski (po mojem vedenju le-tem zadostuje LF za prehod v novo linijo)...

Sam sem strojnik. Podobno kot dr. Lešnjak pri vas nam je g. Moge (nam je predaval matematiko v prvem letniku) tudi znal po nezbrisani tabli pisat :)). Zgleda, da je to bilo endemično v stavbah takratne fakultete :))...

LP

Jože

jacal ::

Notepad++ ali kaj podobnega seveda mora biti, a moje malo priporočilo za nadomestno "beležnico" je Notepad2. Majhen, zelo hiter program, ki ima bolj ali manj vse, kar bi lahko imela tudi MS-jeva stvarca, da bi bila bolj uporabna.

(Ne želim pa zagnati gromozanskih razprav o tovrstnih urejevalnikih, ki jih je seveda na kupe, komercialnih, brezplačnih in odprtokodnih. Izbira je velika, kar ne bi smelo biti slabo. Podav!)

joze67 ::

carota je izjavil:

Če je že kdo pisal na pisalnem stroju, bi vedel da naredi najprej LF (premakne vrstico gor) in nato porine cel valj ročno v novo vrstico, CR. Torej LFCR. Microsoft dela narobe!

Samo da Windows ni bil delan za pisalne stroje (morda so se dali kaki električni kam priklopit, ampak načeloma so bili pisalni stroji standalone). Pri TT (TeleType) pa sta bili to ločeni akciji (in sta komutirali).

Skratka, izkušnja pisalnega stroja je tukaj precej irelevantna.

Windows so prevzeli stanje, kot ga je podpiral (MS) DOS. Ta pa je prevzel, kar je delal CP/M. Spet ta, kar je veljalo na DEC strojih.Ti pa so res uporabljali TT za komunikacijo (če ni bilo VT52 v bližini).

MrStein ::

jype je izjavil:

Komu se zdi
           narobe, da je po vsakem LF
                                     tudi impliciten CR?

Ah, spomini...

win64 je izjavil:

Novica bi morala biti, da notepad zna prebrati druge konce vrstic.
Wordpad(tudi vgrajen v windows) recimo to zna že od nekdaj(ali pa vsaj precej časa).

Že zelo dolgo.

Windows bo znal pravilno brati Linuxove besedilne datoteke

Zakaj linuxove, to je Linux zgolj prevzel od Unix (in še kje je bil ta način v uporabi).
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Zgodovina sprememb…

  • spremenil: MrStein ()

bbbbbb2015 ::

MrStein je izjavil:


Zakaj linuxove, to je Linux zgolj prevzel od Unix (in še kje je bil ta način v uporabi).


Ker nekoč je res UNIX bil pojem, pa si imel Solaris, Irix, Ultrix. Če si bil pravi freak, si točno poznal zgodovino in kateri UNIX se je razvil iz katerega (v grobem iz BSD UNIX ali SYSV). Da ne govorim o THE UNIXu, SCO UNIX.

Jaz sem imel sodelavca, ki je iz komand, ki so bile na UNIXu na razpolago, točno vedel, katera podverzija SYSV unixa je.

Danes je leto 2018. Otroci (mladina) poznajo besedo LINUX ali pa ANDROID. Za besedo Solaris je že treba na wikipediji pogledat, da ni to neka ekstra vrsta majskega hrošča.

tryhard ::

Oprosti, ampak res nam ni potrebno vedeti "standardov", ki so nastali, ko si je grupa mladeničev pred 30 in več leti merila svoje epenise. Če bi takratna generacija bila za kaj, danes teh problemov ne bi bilo.

Looooooka ::

tryhard je izjavil:

Oprosti, ampak res nam ni potrebno vedeti "standardov", ki so nastali, ko si je grupa mladeničev pred 30 in več leti merila svoje epenise. Če bi takratna generacija bila za kaj, danes teh problemov ne bi bilo.

Tista generacija pelje tvojo absolutno neaposobni generacijo scat na vseh podrocjih. Zacnemo lahko z oblacenjem in zakaj je poznati ozadje zadev plus, ne pa zgolj se ena stvar, ki se jo mora lenuh, ki misli, da bo z minimalnim vlozkom prisel do rezultata, pac nauciti za brezveze.

popster ::

Še presledke bi morali vržt ven iz poti v datotekah, ker povzročajo cross platfom težave, potem bi bil M$ kompatibilen.

tryhard ::

Looooooka je izjavil:

tryhard je izjavil:

Oprosti, ampak res nam ni potrebno vedeti "standardov", ki so nastali, ko si je grupa mladeničev pred 30 in več leti merila svoje epenise. Če bi takratna generacija bila za kaj, danes teh problemov ne bi bilo.

Tista generacija pelje tvojo absolutno neaposobni generacijo scat na vseh podrocjih. Zacnemo lahko z oblacenjem in zakaj je poznati ozadje zadev plus, ne pa zgolj se ena stvar, ki se jo mora lenuh, ki misli, da bo z minimalnim vlozkom prisel do rezultata, pac nauciti za brezveze.

Oblačenje nima nobene veze, poznavanje ozadja pa ni vezano na generacijo. Lenob je pa zmerom bilo veliko. Za časa Juge pa še toliko več.
Še bi kdo drug povedal, kako je njegova generacija superiorna vsem Zemljanom in Vesoljcem?

krneki0001 ::

popster je izjavil:

Še presledke bi morali vržt ven iz poti v datotekah, ker povzročajo cross platfom težave, potem bi bil M$ kompatibilen.


Bolje da porihtajo ostali da bodo imena map in datotek lahko dolga vsaj 256 znakov, vključujoč presledke.
Asrock X99 Extreme 4 | Intel E5-2683V4 ES | 64GB DDR4 2400MHz ECC |
Samsung 250GB M.2 | Asus 1070 TI | 850W Antec | LC Tank Buster

StarMafijec ::

krneki0001 je izjavil:

Bolje da porihtajo ostali da bodo imena map in datotek lahko dolga vsaj 256 znakov, vključujoč presledke.

Presledki povzročajo težave, če pišeš imena poti v konzoli. Bolje, da se jih ukine.

krneki0001 ::

Zakaj, v command promptu na MS sistemih čisto normalno deluje. Kar naj na Linuxu to poštimajo da bo to delalo. Ni treba ostalim, da padejo 30 let nazaj, ker so nekateri nesposobni.
Asrock X99 Extreme 4 | Intel E5-2683V4 ES | 64GB DDR4 2400MHz ECC |
Samsung 250GB M.2 | Asus 1070 TI | 850W Antec | LC Tank Buster

Baja ::

presledke črtati + vse ostale znake, ki niso del angleske abecede! kar se mene tice lahko gremo tudi nazaj na 8.3 format. kaj je naslednje, smileiji v imenih datotek?

StarMafijec ::

krneki0001 je izjavil:

Zakaj, v command promptu na MS sistemih čisto normalno deluje.

Ne, potrebno je dodati dvojne narekovaje.

Invictus ::

Ne, ni treba...

TAB doda te zadeve sam...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

Baja ::

ukaz cd dejansko dela brez narekovajev, medtem ko mkdir a b naredi mapo a in b.

rokp ::

Invictus je izjavil:

Ne, ni treba...

TAB doda te zadeve sam...


Ne, jih ne (no ja, ne vedno). Bodi v svojem home direktoriju in vtipkaj:

cd \Program f[Tab]


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Windows bo znal pravilno brati Linuxove besedilne datoteke

Oddelek: Novice / Operacijski sistemi
4818026 (14775) rokp
»

Microsoft PowerShell prihaja na Linux in druge platforme

Oddelek: Novice / Operacijski sistemi
3214695 (12951) frtusnk
»

Word 2003 in Includetext polje - problem

Oddelek: Programiranje
61084 (1000) RuN
»

Izšel Slobuntu 10.10.2 (strani: 1 2 )

Oddelek: Novice / Operacijski sistemi
7919659 (16343) Mavrik
»

PINGO 2.0 & FX5600 MEGA problem (strani: 1 2 )

Oddelek: Operacijski sistemi
795661 (4887) marsovec gugu

Več podobnih tem