Newsgroup: it.comp.macintosh
Titolo: Quando Apple lascia le cose al caso...

Hehe, ci siete cascati, nella trappola del mio titolo da troll. ;-)
Mi "presento" brevemente: sono un utente Linux da lungo tempo,
abbastanza imbranato con le interfacce grafiche ma parecchio svelto con
la riga di comando, ho comprato di recente un Mac Mini (modello base,
Core Solo) per curiosità, perché volevo vedere a cosa assomigliasse
uno Unix con una bella interfaccia grafica.
Devo dire che Exposé e Spotlight sono proprio due belle invenzioni
(come diavolo facevate senza?!), il resto non l'ho esplorato molto
perché uso il computer principalmente per navigare, chattare,
sviluppare applicazioni, qualche volta fare musica ma purtroppo i VST
per Intel sono ancora pochissimi. Trovo iTunes assolutamente irritante,
ma non ero qui per questo... :-D
Il mio problema è molto specifico, probabilmente "invisibile" ai più,
ma per me è uno show-stopper: i tasti cursore, nel terminale, non sono
configurati a dovere!
Fortunatamente con vim me la cavo abbastanza bene perché sono
abbastanza abituato ad usare i tasti alfanumerici e non "dipendo"
troppo da quelli del cursore (anzi, li trovo fin'anco più comodi), ma
purtroppo anche vim sarebbe da aggiornare e configurare bene (se avete
qualche suggerimento sono tutt'orecchi) e non tutto si fa con vim.
Nella fattispecie, ultimamente sviluppo quasi esclusivamente in ruby
(quanto dicevano su quel linguaggio è vero: una volta che ti prende la
scimmia, non ti molla più), e su Linux faccio uso e abuso della shell
interattiva irb. Su Mac c'è, ma gli accidenti di tasti del cursore non
vanno! Vengono fuori i codici di controllo e non posso ripescare i
comandi precedenti.
Questo sarebbe il problema più urgente da risolvere, poi ho notato che
talvolta connettendosi in ssh a un server Linux i tasti cursore non
vanno, ma per legge di Murphy ho riprovato ora a connettermi al mio
serverone Linux, aprendo la sessione screen come mio solito, e con mio
stupore funzionava tutto. Devo aver involontariamente trovato le
impostazioni giuste smanettando, ma poco male: adesso che funzionano
non le toccherò più. ;-)
Qualche sviluppatore ruby (sono sicuro che ci siete, uscite allo
scoperto!) mi saprebbe suggerire cosa fare per far funzionare irb come
si deve? Magari è necessario ricompilare con il supporto readline? Ma
soprattutto, perché non ci ha già pensato Apple? Su Debian questa
cosa NON è lasciata al caso, e tutto funziona come mi aspetto... Apple
mi ha abituato bene per il poco che uso la GUI, ma mi aspetterei
altrettanta cura nei dettagli anche negli strumenti free con
interfaccia a caratteri, visto che io uso principalmente quelli.
Vabè, mi scuso se ho trollato al mio primo post (in realtà è il
secondo), spero di non aver irritato eccessivamente nessuno, e ancor di
più spero che qualche anima pia conosca una soluzione al mio problema.
Lunga vita alla Mela. ;-)

 Hehe, ci siete cascati, nella trappola del mio titolo da troll. ;-)
Più che altro, mi spieghi per qual motivo dovrei leggere un messaggio
piuttosto lungo dal cui subject non sono riuscito a capire di quale
argomento tratti?
Se non hai voglia di spiegarlo non c'è problema, non preoccuparti.

 Se non hai voglia di spiegarlo non c'è problema, non preoccuparti.
Rispiego per gli affrettati:
le impostazioni dei tasti del cursore nel terminale sono fatte male e
non funzionano con un po' di programmi, tra i quali in particolare irb.
Chiedo consigli su come risolvere il problema nel modo più efficace.
Per i dettagli, leggere il post precedente per intero.

 mi aspetterei altrettanta cura nei dettagli anche negli strumenti free
Guarda che il problema per cui Apple non include la readline sta
proprio lě, nella licenza GPL. La history non c'č per lo stesso motivo
nemmeno in Python. 

 nemmeno in Python.
Ma d'oh!! Almeno c'è un modo non troppo doloroso di compilarsi la
libreria da sè? E poi come mai bash sì e readline no? Mi pare che la
licenza sia la stessa...

 interfaccia a caratteri, visto che io uso principalmente quelli.
fottuti problemi di licenza che l'amico rms ci propina: readline è gpl, 
quindi anche i binari che si linkano diventano gpl...
possibilità:
-) installi fink e le rispettive versioni di ruby/python/vim & c
-) ricompili a manina readline e ruby/python/vim & c
-) ti attacchi :P
W la BSDL :)
-- 
()_() | NN KAPISCO XK' CELLHAVETE T'ANNTO CN ME SL         | +----
(o.o) | XK' SKRIVO 1 P'HO VELLOCE MA HALL'ORA DITTELO      | +---+
'm m' | KE SIETE VOI K CI HAVVETE PROBBLEMI NO PENSATECI   |  O  |
(___) | HE SENZA RANKORI CIAOOOO                           |
                    raffaele punto salmaso at gmail punto com

 -) ti attacchi :P
Un po' di ginnastica non fa mai male, ma per stasera ho già praticato
il salto del pasto... anzi, ora vado a rimediare. (-:

 licenza sia la stessa...
Bash č un software, readline una libreria; come tale (se non sbaglio) un
programma non GPL puň chiamare bash e fargli eseguire del codice
indipendentemente dalla sua licenza, ma un programma per linkare
readline *deve* essere GPL.

 qualche suggerimento sono tutt'orecchi) e non tutto si fa con vim.
Comunque puoi usare GVim, che funziona molto meglio; o eventualmente
provare TextMate (a me ha fatto abbandonare Vim, č davvero eccellente!).

 il salto del pasto... anzi, ora vado a rimediare. (-:
mmm, mai saltato uno, di pasto
e si vede...


 provare TextMate (a me ha fatto abbandonare Vim, è davvero eccellente!).
con me non ce l'ha fatta
konsole + mc + vim (rigorosamente testuale)
konsole sia perché è un bel programmino sia perché è l'unito terminale 
multitab decente che c'è in giro (osx o linux o unix che dir si voglia)


 provare TextMate (a me ha fatto abbandonare Vim, è davvero eccellente!).
Uhm, GVim l'ho provato, ma anche lì configurazione un po' farlocca con
errori in bella vista appena avviato e nessuna voglia di correggerli.
Di TextMate ho visto video abbastanza impressionanti, ma non so se
faccia al caso mio: da una parte dovrei comunque imparare come si usano
tutte quelle belle cose fantascientifiche (e impararle per impararle,
le imparo su Vim che almeno quello ce l'ho anche su Linux), dall'altra
ormai molto difficilmente potrei rinunciare all'immediatezza della
modalità comandi, proprio il motivo per cui molti *odiano* vi e i suoi
cloni. :-D
Però una volta che hai capito il meccanismo, come fai a rinunciare
alla rapidità di correggere due parole in mezzo alla frase che stavi
scrivendo, digitando <esc>bb2cwcorrezione<esc>A e continuare a scrivere
senza aver mai spostato le mani dalla parte centrale della tastiera e
senza aver fatto aggiustamenti col cursore o peggio ancora toccato il
mouse? Se sei veloce a digitare, niente batte Vim in velocità, ed è
questo uno dei motivi per cui mi piace tanto e vorrei poterlo usare per
ogni cosa che scrivo. A quando un'estensione per Firefox per integrare
Vim?

 multitab decente che c'è in giro (osx o linux o unix che dir si voglia)
Permettimi di consigliarti screen, se non lo conosci già: da quando
l'ho scoperto, tipicamente apro un terminale solo in tutta una sessione
di lavoro, una tab del terminale per ogni macchina a cui mi connetto, e
uno screen in ciascuna, con dentro tutte le shell che voglio. Passo da
una all'altra con una combinazione di tasti, cosa si può volere di
più? :-D (e per di più è installato di default su OSX, segno che in
Apple di cose utili se ne intendono)

 scoperto!)
sviluppatore e' una parola grossa... diciamo che sto imparando...
-- 
Non si fo credito

wiz wrote:
[snip totale]
il mio .vimrc:
---8<---
" keep a backup file
set backup
" make all windows the same size when adding/removing windows
set ea
"
set sb
" set the filename in the title
set title
"
set mouse=a
" hide mouse pointer when typing
set mousef
"
set mousem=popup
" visual blink instead of beep
set vb
" tabspace
set ts=4
"
set shiftwidth=4
"
set expandtab
"
set softtabstop=4
"
set nowrap
" automatically show matching brackets
set showmatch
" set auto-indent on
set autoindent
" make backspace key works the way it should
set backspace=indent,eol,start
" syntax highlighting on
syntax on
" show line number
" set nunmber
" when moving my cursor, wrap in all cases
" (don''t get stuck at the end of
" line, etc)
set whichwrap=b,s,h,l,<,>,[,]
" show me the matches on tab complete
set wildmenu
command! Q quit
command! W write
command! Wq wq
command! WQ wq
" if you type x ++ then x = x + 1 will appear on the screen.
" The same for x --.
"ab ++ <Esc>1hdiw1hpa = <Esc>pa + 1
"ab -- <Esc>1hdiw1hpa = <Esc>pa - 1
" map control-backspace to delete the previous word :
"imap <C-BS> :<Esc>vBc
" rot13 all text pressing <F3>
"map <F3> ggVGg?
" remove '=' from the list of valid filename chars.
" With <C-x><C-f> can easyly
" complete filename
set isfname-==
" Command Make will call make and then cwindow which
" opens a 3 line error window if any errors are found.
" if no errors, it closes any open cwindow.
:command -nargs=* Make make <args> | cwindow 3
filetype indent on
filetype plugin indent on
--->8---


 link with."
E comunque fanno il possibile: danno il clone di readline sviluppato per
NetBSD per la stessa ragione (ovvero che non vogliono roba GPL).
Spesso il clone se la cava e ci puoi compilare contro. Ma non sempre
funge.
La colpa non è di Apple, ma di chi ha la malsana idea di rilasciare una
libreria di base con licenza GPL.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 -) ti attacchi :P
4) (meglio) DarwinPorts.


 Grazie per avermi illuminato, Maestro. :-D
Si, ma lascia che ti dica che sulla mia esperienza i DarwinPorts
funzionano meglio (a meno che tu non lavori massicciamente con FORTRAN o
librerie in fortran, che al momento hanno qualche problemino a
compilare, mentre fink le offre -- credo -- già compilate).
Comunque è una questione di gusti, alla fine. Io mi trovo meglio con i
Ports di estrazione BSD, mi piace il modo elegante in cui gesticono più
versioni di librerie e software installate, come si aggiornano e tutto.
In qualche modo Fink lo trovo meno maturo (e comunque molto meno curato
di quello che sono i repository di Debian )


 readline *deve* essere GPL.
Esattamente questo: nel momento in cui include gli headers "contiene"
codice sotto GPL.


 Vim?
In effetti un utente esperto di Emacs ti direbbe che lui con Emacs è
altrettanto veloce. Io posso dirti che sono anni che mi alterno con
l'uno e con l'altro, e questo mi rende "inesperto di entrambi", ma la
velocità dei due sistemi sostanzialmente si equivale.
In particolare raggiungere ESC per me non è comodissimo, mentre fare un
ctrl-qualcoosa lo è di più. Poi sono chitarrista, fare accordi sulla
tastiera è banale. <g>
Scherzi a parte, mi ritengo più skillato con vim, ma comunque non lo uso
a pieno. Complessivamente lo abbandono proprio perchè mi capita di usare
molti ambienti diversi e le scorciatoie "Emacs ridotte" sono più
diffuse.
Questo mi permette maggiore flessibilità. 


 versioni di librerie e software installate, come si aggiornano e tutto.
Dei ports tutti parlano bene, il fatto è che io sono "nato" su
Slackware e cresciuto a pane e Debian dal 1998... che fa comunque un
bel sacco di tempo.
Dei ports non mi piace tanto l'idea di dover compilare ogni cosa che
installo, visto che di software grossi ce ne sono in giro, e il mio
Mini non è che sia 'sto mostro di potenza... però vedrò di trovare
una guida ai ports e di capirci qualcosa, visto che se sono (credo)
supportati da Apple avranno pure la loro ragion d'essere.

 Lunga vita alla Mela. ;-)
... maccome posti su ICM e io devo scoprirlo *per caso* mentre bevo un
caffè e mangio un cookie in un bar di Berkeley? ;-)
a presto,
-- 
ci vogliono fermi per prendere la mira
noi diventeremo una giostra che gira

 (poi adesso sto invece usando un build
di McOsten che convive meglio col copy and paste da programmi con
internals vecchiotti come MacSOUP): cosi` hai la versione 7.* di vim
invece dell'antica 6.2 inclusa in MacOSX, hai anche GVIM, ecc.
Come gia` altri ti hanno detto, per usare readline su Mac devi
scaricarlo a parte per ragioni di copyright, poi dovrai ricompilare o
scaricare build di Ruby che usino appunto readline (cosi` e` anche per
Python: quello incluso in MacOSX non usa readline, ma e` facile trovare
build ottimi e + aggiornati che invece si`).  Considerazioni analoghe a
quelle fatte per vim, tra l'altro (il ruby distribuito e` un 1.8.2 del
2004, il python distribuito e` un 2.3.5 del gennaio 2006, ecc ecc; e`
piu` probabile che chi li usa attivamente per sviluppare voglia versioni
piu` recenti).  Ovviamente i SO che possono accettare la licenza GPL
(non BSD, che ha la licenza sua) possono distribuire readline e app che
la usano come parte del sistema, ma chi non e` ne` vuole diventare GPL
(sia proprietario, o anche no come OpenBSD e soci) ovviamente no.
Alex

 GPL, ruby è GPL, python è GPL... e la GPL prevede la possibilità di
Assolutamente non vero: la licenza di Python *NON* e` GPL ma molto piu`
aperta (molto simile a quella di BSD) e Ruby e` dual licensed (GPL _O_ a
scelta un'altra licenza molto piu` aperta).
Alex

 sua libreria compatibile...
Apple distribuisce con il sistema delle estensioni proprietarie di
Python (che usa ad esempio per implementare la gestione dei fax).  Se il
tutto fosse linkato con readline, Apple dovrebbe distribuire anche i
sorgenti delle sue estensioni, cosa che ovviamente non vuol fare, mentre
finche` NON mette readline nella distribuzione e` a posto.  La tesi
legale che lo stato delle librerie di Apple dipenda da cio` con cui sono
linkate e` (a mio parere) pazzesca, e qualsiasi giudice sobrio non solo
la rigetterebbe ma definirebbe la causa come vessatoria, ma se Stallman
e amici suoi continuano a scrivere cosi` le loro licenze, e Apple decide
che ha meglio da fare che combattere una causa contro la FSF che le
costerebbe comunque un tot di popolarita`, non posso dare torto ad
Apple.
Alex

 ad Apple.
Infatti, la logica dice una cosa, gli avvocati un'altra, e i 
fondamentalisti un'altra ancora :)
E se per pararsi le chiappe la Apple ha deciso che se mi interessa 
readline mi devo ricompilare io a manina sia python sia ruby... beh ha 
fatto secondo me la scelta giusta.
Non sono tantissimi quelli interessati a ciò, e quelli interessati non 
si terranno di certo solo le vecchie versioni installate di default, ma 
si installeranno di sicuro anche le nuove, e allora tanto vale che uno 
ci metta anche sto supporto, se gli interessa


 sua libreria compatibile...
In realtà risulta un pelino più complicata *politicamente*, leggi qui 
che usa readline proprio per esemplificare l'idea della GPL  al posto 
della LGPL 
http://www.gnu.org/licenses/why-not-lgpl.html


 4) (meglio) DarwinPorts.
l'avevo esclusa per traumi infantili causati da dp...
magari adesso è meglio, ma sto bene così
prossimo giro forse


).

 supportati da Apple avranno pure la loro ragion d'essere.
In linea teorica i ports possono anche installare binari.
Incidentalmente i binari non esistono. I ports possono essere usati per
creare pacchetti MacOS che possono essere facilmente distribuiti.
I portfiles sono scritti in TCL, che li rende parecchio comodi e potenti
da usare, puoi facilmente farti una tua gerarchia di ports sia per fare
funzionare eventuali problemi in quelli ufficiali, sia per renderti
comodo e pacchettizzato software che di per se non lo č (e questo lo fai
scrivendo solo qualche riga di testo, senza mettere davvero mano ai tool
debian. In effetti il tempo necessario a scriverti un portfile č poco
piů lungo di quello che ci metti a scrivere ./configure && make && sudo
make install e compagnia bella.. in pratica puoi autopacchettizzarti
quello che vuoi).


 prossimo giro forse
Se stai bene cosě, resta cosě. La funzione che svolgono č la stessa, e
ammesso e non concesso che DP sia "genericamente meglio", se a te
funziona bene fink, non hai ragione per passare a DP (visto che al piů
continuerebbe a fare quello che giŕ funzioa bene con Fink).
Il discorso č perfettamente invertibile.


 cloni. :-D
Boh, fa come vuoi :-)
TextMate è tremendamente intuitivo, si impara in poco. Ma certo essere
*davvero* pratico con un editor ti permette di battere qualunque altro.

 invece dell'antica 6.2 inclusa in MacOSX, hai anche GVIM, ecc.
Uh... appena ho un po' di tempo faccio una paginetta e lo rendo il tutto
più facile da accedere.


 più facile da accedere.
Grande, bravo McOsTen!  E` un servizio assai utile alla comunita`.
Alex





Grazie mille ;-)
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier


Lockato alla grande!-)  Nonche` bookmarkato: lo consigliero` "alla
citta` e a quelli che non ci vedono da un occhio"!!!  Grazie.
Alex

 citta` e a quelli che non ci vedono da un occhio"!!!  Grazie.
Fai pure :) Di banda ne abbiamo tantissima, anzi piů gente ci va, meglio
č :)


 Grazie mille ;-)
Non sapevo fossi un fan di vim! :)


 Non sapevo fossi un fan di vim! :)
Non lo sono, ma non mi va di installare Emacs dato che ho già TextMate e
a volte è comodo. Dovrei perdere un pò di tempo a imparare i comandi su
serio. Emacs mi sa che lo rivedrò solo per SLIME :)



| |._/|_|\__/\__/\__/ | 
|        /_/ /_/      | *Si vis pacem, para papunzi