Il nome di BBEdit forse dice poco ai più e praticamente nulla a chi si è avvicinato al mondo Mac da poco, ma è un nome molto importante per il mondo Apple perché ha accompagnato l’ambiente dello sviluppo software, di sistema e web per più di vent’anni (sin dai tempi di System 6, prima ancora che si coniasse il nome “Classic” per la precedente incarnazione di Mac OS) in modo professionale, completo e tutt’ora inimitato.
Il coltellino svizzero degli editor di testo per Mac
Ai nuovi utenti possiamo dire che BBedit (il nome prende spunto dalla società BareBones Software) è sostanzialmente un editor di testo puro, privo delle capacità di gestione del testo arricchito che hanno i vari editor più famosi come Word, Pages o anche TextEdit ma che al suo interno propone sistemi di automazione avanzata per il supporto di diversi linguaggi di programmazione, scripting e markdown: l’App supporta e propone strumenti adatti ai linguaggi ANSI C, C++, CSS, Fortran 95, HTML, Java, JavaScript, JSP, Lasso, Object Pascal, Objective-C, Objective-C++, Perl, PHP, Python, Rez, Ruby, Setext, SQL (incluso Transact-SQL, PL/SQL, MySQL e PostgreSQL), Tcl, TeX, UNIX shell scripts, XML e YAML.
Oltre a questo, sono molti gli utenti come il sottoscritto che ancora usano BBedit come un valido editor di testo, le cui mancanze nella gestione degli stili più basilari come grassetto, italico o sottolineato sono sostanzialmente un aiuto alla concentrazione per la realizzazione di un contenuto, il cui arricchimento sarà eseguito in un secondo momento.
Dentro e fuori di Mac App Store
Recentemente il software si è aggiornata alla versione 11. La prima novità che si nota nel passaggio è che questa non è più disponibile attraverso Mac App Store, diversamente da quanto successo con la versione 10, che è rimasta sullo store di Apple a disposizione di chi l’ha precedentemente acquistata. La scelta, peraltro condivisa da altre App, a detta degli sviluppatori non è figlia di una unica motivazione ma di una somma di considerazioni, interessanti da scoprire anche per chi non sviluppa, perché apre a considerazioni importanti sullo stato del mercato e sui punti di vista che concorrono alla creazione di un ecosistema molto più vasto e variegato di quanto si è soliti considerare.
La percentuale da lasciare ad Apple (il 30% del prezzo) è già di per sé un gradino scomodo per una piccola software house che opera in una piattaforma non dominante: a questo si aggiunge l’impossibilità di provvedere ad un supporto diretto ai clienti che hanno acquistato l’App (per motivi di privacy gli sviluppatori non possono sapere chi ha acquistato una determinata App, solo il numero di App vendute) e alcune limitazioni dovute all’architettura interna che le App distribuite devono avere per poter stare dentro Mac App Store, ben più rigida e limitante di quanto non succede con una distribuzione classica.
Nelle note di Barebones si legge che l’idea di Mac App Store è buona per la comunità Mac e che molte App trarranno beneficio dal supporto di Apple, ma per gli utenti tipici di BBEdit una distribuzione più classica è la scelta migliore. D’altra parte il cliente tipico di BBEdit è un utente evoluto, che sviluppa e che conosce bene il web, ha affinità con l’acquisto online e desidera un supporto capillare e personalizzato, come Mac App Store non può fornire.
Detto questo, gli utenti che hanno acquistato BBEdit 10 su Mac App Store possono richiedere l’aggiornamento alla versione 11 come Upgrade ad un prezzo scontato.
Un coltello affilato
Più volte si è letto negli anni che BBEdit è come un coltellino svizzero, un editor di testo che sa fare tutto e che va bene in moltissime situazioni: chi programma trova in BBEdit uno strumento formidabile, chi sviluppa in HTML, JavaScript o CSS ha un ambiente pulito e privo di distrazioni tipiche di editor più famosi e per questo meno verticali.
Spesso però è la natura asciutta, austera ma ottimizzata di BBEdit l’arma migliore, che taglia di netto inutili tempi passati ad osservare funzioni colorate che poco hanno di produttivo, mentre l’editor dell’App, per quanto verticale a chi si avvicina la prima volta, è produzione pura per chi lo usa da qualche tempo. Quindi più che un coltellino svizzero forse sarebbe meglio parlare di un coltello affilato, da serial killer, che arriva silenzioso e preciso dove altre armi spesso arrancano o non colpiscono con la stessa efficacia.
Di conseguenza, recensire un prodotto come questo, che ha attraversato più di un ventennio di storia indenne, dall’ambiente Classic a quello di OS X, è sicuramente difficile: si rischia di essere presuntuosi, di cercare difetti e pregi laddove questi aspetti rappresentano solo una piccola parte di un prodotto così polivalente da essere, senza giri di parole, indispensabile per qualsiasi utente evoluto, che fa del Mac un ambiente di lavoro che si erge dal comune utilizzo di Office e Photoshop.
Questo per dire che da parte di Barebones è spesso difficile fare alcune scelte, perché scrivere una App che serve per sviluppare altre App provoca decisioni spesso fuori dal comune per chi non è dell’ambiente.
Testo al limite
BBedit è un editor di testo puro, una App che richiede al minimo OS X 10.8.5 ma compatibile con OS X 10.11. Le capacità di gestione del testo sono affiancate dalla presenza di diversi tipi di dizionario che trasformano il documento aperto evidenziando le zone di markdown, proponendo scorciatoie e abbreviazioni durante la scrittura, automatizzando la creazione di zone comuni nella creazione dei documenti (come l’intestazione) e di pattern per variabili e comandi per tutti i linguaggi di cui sopra abbiamo parlato.
In aggiunta a questo, BBEdit offre un sistema di ricerca e sostituzione di stringhe integrato molto potente in grado di eseguire operazioni all’interno di un file di testo non solo di parti di testo statico, ma anche di pattern, utilizzando il comando Grep per le variabili, anche parametrizzato. Tale potenza offre anche una interessante integrazione con il Finder per la ricerca e la sostituzione di parti di testo non solo sui file aperti dall’App ma anche in una serie di file in una cartella, con filtri per automatizzare i processi.
Sono disponibili molte palette che automatizzano comandi verbali utilizzando elenchi di tag in modo da evitare noiosi errori di ortografia che inficiano uno script o un comando per un banale errore di distrazione o per un dubbio sul nome di un comando: chi scrive CSS o HTML, ad esempio, troverà grande beneficio nell’utilizzo dei sistemi di automazione di BBEdit, che offrono finestre di ispezione per la creazione di un comando specifico, con tanto di punteggiatura e spaziatura.
Sono anche presenti comandi per la compressione interna dei file, utilizzando sistemi di ottimizzazione (ad esempio, con la censura di spazi, a capo e altri caratteri utili solo ad una lettura umana) così come la trasformazione di un file in una struttura meno criptica e formattata visivamente per una più corretta lettura.
Non mancano sistemi per l’analisi degli errori all’interno di un file, che BBEdit analizza sfruttando i dizionari integrati (quindi non solo testo, anche i comandi sono controllati): la potenza dell’App è molto comoda anche quando si tratta di controllare differenze tra più documenti, evidenziando le parti differenti per capire dove e come sono stati modificati.
Infine non mancano strumenti per la modifica avanzata di un testo, come la sostituzione di maiuscole con minuscole, quote, tabulazioni, segni di fine linea, normalizzazioni di un testo e altri strumenti di analisi e strutturazione con una anteprima interna (che sfrutta WebKit) oppure attraverso un browser a scelta.
Queste caratteristiche sono la base di BBEdit, e accompagnano molte altre funzioni minori che qui sarebbe ridondante elencare. A queste fa capo una interfaccia davvero minimalista: un semplice documento di testo apre a una serie di menu che contengono risponde a domande che l’utente deve, necessariamente, fare.
L’approccio di BBEdit è sostanzialmente diverso da quello di Word, di Pages o di altri editor di testo, che propongono i comandi prima che l’utente li chieda, qui i comandi non compaiono ed è necessario cercarli, un atteggiamento che l’utente di BBEdit ama. Dal menu Palette (Window) sono disponibili alcuni pannelli che mostrano le possibilità di automazione, per la creazione di comandi o pattern preconfezionati, ma è sostanzialmente un aiuto che l’App offre ad un utente che sa già che cosa cercare.
L’interfaccia consente di scrivere in modo libero, da sinistra a destra utilizzando un vincolo destro del documento o meno (soft wrap), mostrando o nascondendo i caratteri invisibili e classificando il testo e i tag riconosciuti con colori diversi (personalizzabili). L’App riconosce la natura e il tipo di tag e comandi, permettendo di mostrare o nascondere intere parti di testo contenute in un tag chiudendolo, evidenziando il tutto con una piccola icona che simboleggia la presenza di testo all’interno, seppure la numerazione delle righe, presente, mostra che parte del documento è celata. Questo permette di concentrare la lettura di un documento complesso una parte alla volta.
Il riconoscimento dei tag è utile anche per automatizzare la chiusura automatica di quelli aperti, così come per l’identazione, che ne offre una vista più facile.
La finestra mostra in basso alcune informazioni fondamentali, come l’identificazione del tipo di file, che può essere modificata manualmente, il tipo di codifica dei caratteri, il blocco e l’ora e la data dell’ultimo salvataggio.
C’è anche una incredibile affinità tra BBEdit e alcuni servizi di sistema come il Terminale e AppleScript, in modo da operare all’interno dell’App e richiamare questi ultimi, fornendo loro il contenuto di un documento in automatico per la verifica della fattibilità.
È ovviamente possibile anche salvare parti del documento nella funzione Clipping, in modo da poterle poi riprendere in altri documenti, oppure per incollarli in modo ripetitivo di giorno in giorno (funzione molto utile, ad esempio, per chi scrive HTML e CSS e ha a che fare con molti documenti spesso simili).
A queste funzioni, maturate attraverso gli anni, si aggiungono quelle dell’ultima versione: un nuovo e migliorato sistema di colorazione per i tag, un miglioramento della parte Clipping e alcuni cambiamenti nella finestra delle differenze quando si comparano più documenti.
Alcuni lavori di lifting sono stati fatti anche nell’icona e nell’interfaccia in generale per renderla più efficace per i Mac con display retina.
Conclusioni
Dare un voto ad una App come BBEdit è quasi impossibile: l’App sta su Mac da più tempo di noi e fa molte più cose di quante abbiamo bisogno. Leggera, impermeabile ai cambiamenti, solida (chi scrive queste righe, in tanti anni di utilizzo, non ricorda neppure un crash di una qualsiasi versione di BBEdit, pure su Mac non proprio sani), versatile e asettica, non possiamo che consigliarla a tutti. Ad essere sinceri qualche miglioramento ci sarebbe, come ad esempio la possibilità di integrare alcune palette al documento principale quando questo va a tutto schermo, ma sono vizi di forma che vanno valutati anche nel giusto contesto (molto spesso chi programma utilizza più display, quindi pone le palette in un display secondario e l’ancoraggio potrebbe essere ridondante) e potrebbe essere questo un difetto solo didattico.
Il costo dell’App non è impossibile, ed è vero che nonostante un approccio inizialmente difficile, se paragonato alla media dei prodotti in circolazione, alla lunga non può che dare soddisfazioni. Per chi vuole provarla, nella pagina dello sviluppatore è disponibile una trial, in alternativa è possibile utilizzare gratuitamente TextWrangler (http://www.barebones.com/products/textwrangler), sostanzialmente una versione semplificata e priva dei comandi più avanzati di BBEdit, ma propria della stessa filosofia e di molti degli automatismi.
Pro
Leggero, veloce, affidabile, potente
Contro
Alcune scelte di interfaccia sono troppo conservatrici
Prezzo
49.99 Dollari – Si scarica dalla pagina di Download del produttore che presente anche offerte speciali per gruppi e upgrade.