VSHNU: The New Visual Shell [Romanian]
Original in English by Steve Kinzler
New înveliş vizual
Descărcați versiunea 1.0305 | | Imagini | | Listă de mailing | | Contacte
Citiți Changelog şi codul: vshnu || vshnucfg.pl || vshnurc.pl
Motivație
Utilizatorii calificați de Unix cunosc importanța a învelişului, sau a interfeței liniei de comandă (sau CLI, de la eng. command line interface). (Vechi utilizatori de Unix nu a avut nici o alegere cu privire la aceasta). Având în același timp mai mult de o curbă de învățare decât o interfață grafică de utilizator (GUI), ea permite specificarea rapidă și fiabilă a operațiunilor puternice, creative şi complexe. Pentru oricine, dar şi pentru utilizator superficial, învățarea unei CLI este o investiție care se întorce cu merit. Mediile liniilor de comandă încă ușor de utilizat prin conexiunile de rețea de lățime de bandă scăzută și anumite monitoare. Neal Stephenson explică istoria și valorile interfeței de calculator extrem de bine în lucrarea sa“La Început a fost linia de comandă” <http://www.cryptonomicon.com/beginning.html>. Se poate chiar construi un caz puternic, despre CLI care este cel mai bun pentru un utilizator care învaţă un computer nou, așa cum este descris în “Linia de comandă – Cea mai bună nouă interfaţă?”<http://osnews.com/story.php?news_id=6282>.
Cu toate acestea, atunci când eşti preocupat de manipularea cu fișiere și de management (care este un lucru foarte bun de bază a interfeței dvs., şi de care majoritatea de GUI mai degrabă va face să le uitați), CLI poate fi o interfață frustrant de restrînsă pentru sistemul de fișiere. Prea multe comenzi plictisitoare, de exemplu (1) și Cd (1), e necesar de a supraveghea aici. Un manager de fișiere GUI ar putea aborda această problemă, dar atunci nimeriţi într-un ”mouseland” şi pierdeţi avantajele lui CLI.
Introduceți învelişuri vizuale. Nu este o idee nouă, învelişuri vizual poat opera într-un terminal întreg sau ecranul consolei. Listarea fișierelor este afișată pentru referință constantă dvs. Comenzi comune și operațiuni pot fi efectuate în mod tipic prin cîteva apăsări pe tastatură într-o interfață vizuală. Așa cum editor vizual vi (1) a evoluat de la editori liniei de comandă ed (1) și ex (1), învelişuri vizuale au încercat să evolueze de la învelişurile liniei de comandă. Unele învelişuri vizuale s-au promovat ca simple meniuri orientate spre interfețe adecvate pentru începători, în timp ce alții au pus accent mai mult pe funcționalitatea lui utilizator-expert.
Cu toate acestea, învelişuri vizuale nu au fost niciodată într-adevăr de utile, cu excepția unor cercuri cum ar fi anumite moduri în Emac-uri, și programul Midnight Commander. Cred că acest lucru se datorează faptului că acestea au fost concepute în mare parte ca de sine stătătoare, cu aplicații de configurare limitată. Folosiriea învelişului vizual a cerut un salt semnificativ într-un nou instrument de bază de interfață, și puțin a fost atât de convingătoare sau standart pentru a face asta să merite realizare.
Prin urmare a apărut necessitate de proiectarea lui vshnu (noului înveliş vizaul, sau New Visual Shell). În tradiția lui Unix, acesta funcționează cu lucruri deja existente și umplînd niveluri goale. Când acesta se încorporează în mediul dvs. Unix, vă păstrați linia de comandă a învelişului, editorul dumneavoastră, pager-ul dvs., precum și accesul la toate instrumentele, veclenii și know-how-uri. Vshnu poate funcționa ca un mod suplimentar opțional vizual a învelişului liniei de comandă dvs. Dvs. vă comutaţi între modul liniei de comandă și cel vizual cu ușurință după cum doriți. Lățime de bandă a interfeţei si putere pentru operațiunile Unix este pe un plan mai mare și viața devine mai uşoară. În plus, fiind scris în Perl, acesta se importează la orice sistem Unix fără compilare, oferindu-vă avantajele unui interpret Perl care se rulează ușor la îndemână, și permisete personalizare limitată a comanzei vizuale doar prin creativitatea dvs., şi nu necesită cunoștințe de Perl pentru utilizare normală. Vshnu este un instrument care merită cunoştinţă, chiar dacă este folosit numai ocazional ca un mediu interactiv, paginabil, culorat ls (1), dar şi care încă plătește înapoi, cu dobândă, de la orice ce veţi aplica în utilizarea acestuia.
Caracteristici suplimentare
- Opțiuni extinse pentru sortarea și listarea fișierelor de directoare
- Metode multiple pentru navigarea directoarelor și selectarea fișierelor
- Locaţii directoarelor pot fi marcate pentru reîntoarcere rapidă
- Listează de comanzi de ieșire colorate alături de fișiere, inclusiv o comanda internă “ls-l” și “df”
- Dispune de istoria de directoare și fișiere
- În terminale de culoare, foloseşte culori pentru afişări mai informative, inclusiv colorarea fișierelor în dependenţă tip prin intermediul variabilei de mediu standarte LS_COLORS
- Extinde și restrânge subdirectoare alese
- Metode multiple pentru alegerea și activarea pe seturi individuale sau arbitrare ale fișierelor
- Comenzile cheie și acțiunile de fișiere sunt pe 100% configurabile, extensibile, de auto-documentate și în mod arbitrar complexe, inclusiv opțiuni multiple de variante
- Acțiuni de fișiere sunt personalizabile de către nume de fișiere/tip/conținut/etc, cu acțiuni comune configurate în mod implicit
- Descrieri de ajutor online ale comenzilor și acțiuni cheie de fișiere, prin mod și comandă
- Configurare separată pe site și pe utilizator
- Display-uri coloanei de fișiere reglabile
- Se adaptează la schimbarea dimensiunii ecranului (dar funcționează cel mai bine pe ecrane de 80 de caractere în lăţime sau mai mult)
- Directorul curent şi mediu este împărţit între vshnu și învelişul-mamă liniei de comandă
- Interfețe multiple pentru comenzile învelişului și declarații Perl
- Declarațiile Perl pot fi {{ înglobate }} în subsetul comenzilor de înveliş
- Clauză lui Perl “unde” la subset de fișiere afișate
- Multe acțiuni disponibile prin intermediul mouse-ului în terminalele cu suport de mouse cum ar fi xterm (1)
- Poate folosi fișiere mailcap (4) pentru a specifica acțiunile de fișiere de tip MIME
- Poate folosi o variabilă de mediu CD_PATH ca o cale de căutare pentru fișiere și directoare
- Recunoaște următoarele variabile de mediu standarte: ANSI_COLORS_DISABLED, DISPLAY, EDITOR, HOME, HOST, LS_COLORS, MAIL, MAILCAPS, MAILER, PAGER, PATH, PERL_RL, SHELL, TERM şi VISUAL
Istorie
Apariţia lui Vshnu a fost inspirată inițial după modelul programului vsh, Visual Shell. Vsh a fost scris la începutul anilor 1980 și este destul de învechit acum. După ce nu a fost inclus într-o distribuție BSD, aceasta a fost uitată. Nici un port SunOS nu a fost compliat pînă ce nu a venit timpul lui pre-Solaris, și portul lui Linux dispune încă de multe greşeli. Dar, acesta a început cu unele idei corecte. Eu am folosit vsh aproape întreaga mea carieră în Unix înainte de a scrie în cele din urmă vshnu înlocul aceastuia, pentru a extinde și a moderniza pe aceasta.
“Nu” în “vshnu” înseamnă “nou”, precum și invocă zeului hindus Vishnu, păstrătorul Universului și restaurator al Dharmei (ordine morală). Hmmm, cam aşa.
Instalare
1. PREMISE
Aveţi nevoie de Perl 5.002 sau versiune mai superioară, cu module Term::Screen şi Term::ANSIColor – toate disponibile <http://www.cpan.org> . Fișierele de module Term::Screen şi Term::ANSIColor sunt, de asemenea, incluse aici, în libperl / Termdirectory. Dacă doriți să instalați acestea, trebuie doar să adăugați extensiune “.pm” la numele de fișiere și apoi copiați-l într-un director în Perl dvs. @INC sau în $HOME/perl/Term, $HOME/lib/Term or $HOME/lib/perl/Term.
Term::Screen folosește Term::Cap, astfel încât veți avea nevoie de un fișier termcap care conține definiții capabilităților terminalului dvs.. Majoritatea sistemelor au deja acesta, dar în cazul în care dvs. nu-l aveţi, un fişier termcap complet este disponibilă la <http://www.tuxedo.org/~esr/terminfo/termtypes.tc.gz> . Unul mult mai scurt conține numai unele terminale comune este disponibil la <http://www.cs.indiana.edu/~kinzler/home.html#etc/termcap> . Fișier termcap poate fi instalat la $TERMCAP, $HOME/.termcap, /etc/termcap sau /usr/share/misc/termcap. Sau pe (vechi) sistemele Debian, puteți rula doar `apt-get install termcap-compat`.
2. OPTIONAL
Modulul Term::ReadLine::Gnu, sau cel puțin Term::ReadLine::Perl, este recomandat pentru furnizarea liniei de editare, istorie, finalizarea numelui de fișier și inserţii (cu M-v) în cadrul vshnu <http://www.cpan.org> . Alte module Perl, pot utiliza, dacă sunt instalat, pentru anumite caracteristici sunt date Data::Dumper, Filesys::DiskFree, MIME::Types and Mail::Cap.
Dacă este disponibil, vshnu pot produce o bună utilizare a culorilor într-un terminal sau consolă cu suport de culoare ANSI, şi acest lucru este foarte recomandat. Pentru X Windows, cele mai recente versiuni ale xterm (1) au suport de culoare corespunzătoare <http://www.clark.net/pub/dickey/xterm/>. Asigurați-vă că informațiile dvs. termcap sunt definite în mod corespunzător pentru terminalul culoarei dvs. Veți dori, de asemenea, atunci software-ul GNU fileutils care include instrumentul thedircolors (1) pentru setarea variabilei dvs de mediu LS_COLORS. Această variabilă este referit de GNU ls (1) și vshnu pentru a determina modul în care fișierele trebuie să fie colorate în funcție de tip și nume. Ca un exemplu, specificațiile culoarei fișierului pe care eu am folosit sunt disponibile la <http://www.cs.indiana.edu/~kinzler/home.html#etc/colorrc-ansi>.
Un terminal asemănător cu sprijin de mouse xterm (1) va permite utilizarea funcționalității mouse-ului lui vshnu.
Utilitarul xcb(1) va fi necesar pentru interfețele la buffer-ul de tăiere X11 pentru lucru <http://www.goof.com/pcg/marc/xcb.html> .
3. INSTALARE
Vshnu poate fi instalat fie ca un modulul lui Perl regulat sau în orice locaţii alese în mod manual, inclusiv directorul dvs. de acasă.
Rutină obișnuită
perl Makefile.PL
make install clean
ar trebui să instaleze corect fișierul “vshnu” în directorul script-urilor Perl și fișierul “vshnucfg.pl” în directorul bibliotecii Perl.
Aveți posibilitatea să editați prima linie a script-ului “vshnu” pentru a conține calea corectă a executabilului perl dvs., apoi copiați-l într-un director din CALEA dvs. Asigurați-vă că executabilul a făcut o copie.
Apoi, fișierul “vshnucfg.pl” poate fi copiaţi acolo unde doriți. În cazul în care nu este instalat ca $HOME/.vshnucfg sau ca vshnucfg.pl undeva în direcorul lui Perl @INC sau în $HOME/perl, $HOME/lib sau $HOME/lib/perl, atunci va trebui să setați mediul VSHNUCFG variabil la locația acestuia, sau să editaţi script-ul “vshnu” instalat în partea de sus pentru a seta $ default_vshnucfg.
Opțional, mediul regulat a învelişului poate fi îmbunătățit pentru a interacționa cu vshnu în mod vizual suplimentar, comunicînd despre orice schimbări de mediu la vshnu și directorul schimbărilor între cele două învelişuri.
Vezi aici subdirectorul pentru linia de comandă a învelişului dvs. pentru următoare direcție. Contribuțiile de integrare pentru alte învelişuri sunt foarte binevenite.
Procedura de instalare descrisă mai sus instalează script-ul principal vshnu și fișierul de configurare (the main vshnu ”engine” script) necesar. Un fișier de configurare complet nouă ar putea fi scrisă și înlocuit de cel furnizat de o vshnuwith cu structura de comandă foarte diferită și funcționare (probabil non-modal). Contribuții ale adăugirilor sau îmbunătățirilor fișierului vshnucfg sunt binevenite (the vshnucfg file).
De obicei, se întîmplă, că doriţi doar să adaugaţi pe unele extrase personale sau să faceţi ceva în configurația furnizată. Acest lucru se poate face cu fișierul Perl “vshnurc”. El este încărcat după fișier Perl “vshnucfg” (instalat mai sus), și așa poate modifica şi completa efectele sau altceva în el. Ambele fișiere reprezintă doar codul Perl, care defineşte structurile de operare pentru mediul vshnu. Locația fișierului vshnurc se presupune a fi $HOME/.vshnurc (orvshnurc.pl în Perl lui @INC sau în $HOME/perl, $HOME/lib sau $HOME/lib/ perl) dacă variabila mediului VSHNURC nu este setată (sau variabila $default_vshnurc este setată în fișierul vshnucfg). Fişierul meu personal vshnurc (My personal vshnurc file) este incluse aici ca “vshnurc.pl” ca un exemplu pentru a începe crearea unui propriu dvs.. O cunoştinţă cu Perl va fi, probabil, necesară pentru a efectua o activitate importantă în cadrul acestor fișiere.
Dacă sunt disponibile module Mail :: Cap, și, probabil, MIME :: Types, configurația furnizată lui vshnu va folosi orice fișiere mailcap (4) pe care le va găsi (în $MAILCAPS sau $HOME/.mailcap, / etc/mailcap, /usr/etc/mailcap and/usr/local/etc / mailcap) pentru acțiuni de fișiere oferite pentru orice tipuri de fișiere. De asemenea, acesta va recunoaște un fișier mailcap specific vshnu (în $VSHNUCAP sau $HOME/.vshnuc ap sau set de $default_vshnucapvariable în fişierul vshnucfg) pentru acțiuni de fișiere pentru a înlocui configurația obișnuită. De exemplu, dacă preferați xv(1) prin display(1) pentru vizualizarea fișierelor cu imagine, puteți găsi adăugarea de această linie în fișierul dumneavoastră vshnucap mai simplu decât schimbarea fișierului vshnurc dvs.:
image/*; xv %s; dontneedterminal
Folosire
Acesta este minim pe care veți dori să știți pentru a putea utiliza vshnu cu configurația furnizată:
La pornirea lui vshnu, ar trebui să vedeți o listă cu fișierele din directorul curent. Puteți intra în subdirector prin tastarea scrisorii ce etichetează aceasta. Tastarea scrisorii de etichetare a unui fișier se va încărca acel fisier în editor. Puteți merge până la directorul părinte, cu <Return> sau înapoi la directorul anterior cu ‘\’. Cu “.” puteți introduce un fișier sau un director pentru a merge la. <Tab> Și <Backspace> (sau <Delete>) va aluneca etichetele (sau altfel numit “sac”), în jurul altor fișiere de pe ecran. < Space > va lista următoarea pagină de pe ecran plin de fișiere în directorul curent. Tastînd “L” în mod repetat se va afișa lista lungă ale fișierelor din coloana sacului (<Control-L> va șterge listare lungă). “:” va permite sa rulați o comandă de înveliş. “V” va suspenda vshnu, arunncîndu-vă înapoi în învelişul cerut. Prin <Control-Q> q (sau <Control-Z> q) veţi ieși din vshnu.
Cu mouse-ul puteţi să faceți clic pe butonul stâng pe un nume de subdirector ca să-l introduceți, sau pe un nume de fișier pentru a o încărca în editor. Clic pe centru pe fundal vă va duce până la directorul părinte, sau faceți clic pe butonul drept acolo pentru a reveni la directorul anterior. Folosiţi roata lui mouse pe fundalul paginii pentru alte informaţii despre fișiere în directorul curent, sau în timpul afișării listării lungi (faceţi clic din dreaptă în timpul ștergerii listării lungi).
Desigur, nu e mult, există mult mai posibil. Tastaţi “%” în fiecăre mod vshnu pentru a vedea toate comenzi cheie disponibile și ce acestea fac. Tastaţi “&” pentru a vedea ce acțiuni de fișiere vor fi efectuate la selectarea fișierelor în modul de acțiune actual a fișierului. Tastaţi <Control-N> şi va urma o cheie pentru a vedea ce se va întâmpla cu această comandă cheie. Tastaţi “^” pentru a vedea toate comenzile disponibile a mouse-ului.
Iată un rezumat al modurilor în configurația furnizată, cu cheile pentru a intra și ieși din fiecare mod:
| MOD | Tasta | MODURIle tastie de comandă |
|---|---|---|
| principal | mod de pornire și cel mai frecvent utilizat | |
| alegere | / | fișiere selectate sunt adăugate la set de fișiere alese. Comenzile modului principal sunt disponibile aici, de asemenea, deși cu un sens schimbat. Comenzi suplimentare a tastei sunt disponibile, care operează pe setul fișierului ales. |
| opţiuni | O | Setează şi anulează diferite opțiuni pentru sortare și listare. Tastați “%” în modul opţiuni pentru o listă completă de opțiuni. Aceast mod iese automat după o selectarea tastei de opțiune. |
| MOD | Tasta | Acțiunea în cazul fișierelor MODURI |
|---|---|---|
| editare | Modul de plecare unde fișierele sunt editate și sunt introduse directoarele. | |
| executare | ? | Acțiune specială este luată în dependenţă de natura fișierului selectat, de exemplu, fișiere GIF sunt vizualizate, fișierele de arhivă au conținutul lor enumerat, etc |
| extindere | “ | Directoarele selectate sunt extinse în listarea fişierelor, sau dau eşec dacă sunt deja extinse. |
Resurse suplimentare
- cea mai recentă versiune a dezvoltatorilor fișierelor sursă vshnu sunt disponibile la: vshnu , vshnucfg.pl , vshnurc.pl
- Un forum web și listă de e-mailing abonare pentru discuții, sprijin și anunțuri privind vshnu este disponibil la
- Un articol introductiv cu privire la utilizarea de vshnu a fost publicat in noiembrie 2005 în revista Linux Magazine (versiune SUA) în coloana lui Jerry Peek Power Tools column, paginile 12-17. E disponibil on-line la <http://www.linux-mag.com/content/view/2332> . Există, de asemenea, un pic în ebraică online la <http://linmagazine.co.il/book/view/8177>.
- CaFe.pm <http://cafe.pm.org/> , un grup de negustori Perl în Argentina, au publicat un interviu lui Víctor A Rodríguez cu Steve Kinzler despre vshnu în buletunul din aprilie 2006, numărul 1.0. E disponibil on-line la <http://cafe.pm.org/boletines/Issue.v1.0.pdf>, cu versiunea în limba engleză originală la <http://www.cs.indiana.edu/~kinzler/vshnu/perlitas.html>.
- Un articol în revistă japoneză și prezentare a vshnu au fost publicate în septembrie 2001 într-un număr revistei Linux Magazine, paginile 124-125.
Drepturi de autor GPL
vshnu : New Visual Shell
Copyright © 1999 Ștefan B Kinzler
Acest program este un software gratis; îl puteți redistribui și / sau modifica în conformitate cu termenii GNU General Public License , după cum e publicat de Free Software Foundation; fie versiunea a 2-a Licenței, sau orice versiune ulterioară.
Acest program este distribuit în speranța că va fi util, dar FĂRĂ NICI O GARANȚIE, nici chiar garanția implicită de COMERCIALIZARE sau de POTRIVIRE PENTRU UN ANUMIT SCOP. Vezi documentul GNU General Public License pentru mai multe detalii.
Ar trebui să primiţi o copie a Licenței Publice Generale GNU (GNU General Public License) împreună cu acest program (priviţi fisierul “COPYING”), dacă nu, scrieți la Free Software Foundation, Inc, 59 Temple Place, Suite 330, Boston, MA 02111 – 1307 Statele Unite ale Americii