Vermeiden gezackten Text, wenn sie in vi einfügen?
Frage
Obwohl ich kein Problem mit SecureCRT (5.1.2 Build 274) zur Arbeit von Windows verfügen und eine Verbindung zu PCs mit Linux, habe ich ein Problem, wenn ein eingebettetes Asterisk Appliance anschließen, die „vi“ durch BusyBox 1.4.1 bietet ( 2008-03-10).
Das Problem, das ich habe, ist, dass, wenn ich Code in vi einfügen, erscheint der Text wie folgt gezackt:
<?php
try {
$dbh = new PDO("sqlite:./db.sqlite");
$dbh->exec("CREATE TABLE IF NOT EXISTS customer (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(255))");
Hat jemand was das Problem ist? Gibt es eine Möglichkeit zu rekonfigurieren entweder BusyBox oder SecureCRT damit ich erfolgreich einfügen?
Danke.
Lösung
Dies ist vi des Auto-Einzug mit der vorhandenen Vertiefung in Konflikt. einfügen Modus aktiviert, bevor einfügen.
<ESC>:set paste
NB: Ich in der Regel vim verwenden. Es ist möglich, dass die Funktion nicht in vi existiert.
Andere Tipps
Ich vermute, Sie haben smartindent
oder autoindent
eingeschaltet. Ich benutzte set si!
und set ai!
zu tun, aber David Dorward Antwort scheint die gleiche Wirkung zu haben. (Ich werde, dass man sich erinnern haben. :))
Ich denke, set ai
die einzige in Vanille vi
ist. Wenn Sie auf Kraft , um sie auszuschalten, tun set noai
(set ai!
nur den Zustand kippt.)