題:
具有全列模式支持的自由文本編輯器
Mawg says reinstate Monica
2014-06-09 10:50:15 UTC
view on stackexchange narkive permalink

如果外面有足夠大的人記得IBM大型機上的ISPF編輯器,那麼您知道我的意思。對於其餘的人...

我正在尋找一個免費的編輯器,該編輯器允許我僅編輯文本文件的特定列(最好僅在一系列連續的行上)。

NotpePad ++,Crimson Editor(在開發中似乎更長)和UltraEdit(在開發中不是免費的)都聲稱具有列模式,但這僅是複制/粘貼文本矩形區域的能力

雖然肯定不錯,但我希望他能夠搜索/替換文本,並能夠將其限制為一個範圍或連續的列,最好是在一定範圍的連續行上。

p>

一個不好的例子:

 蒂姆喜歡啤酒湯姆斯非常喜歡啤酒鮑勃既不喜歡啤酒也不喜歡葡萄酒,安不喜歡啤酒,也喜歡葡萄酒(以及牛津逗號;-)  

這又是&行號:

  1 2 3 4 1234567890123456789012345678901234567890 1 Tim喜歡啤酒2 Toms非常喜歡啤酒3鮑勃既不喜歡啤酒也不喜歡葡萄酒4安喜歡啤酒,也喜歡葡萄酒 

如果我想在第10列和第20列之間將所有“啤酒”更改為“魚”,結果將是(更改大寫)。

  1 2 3 4 1234567890123456789012345678901234567890 1 Tim喜歡FISH2 Toms非常喜歡FISH3 Bob不喜歡啤酒或葡萄酒< ===不變,不在cols之間10 & 204 Ann喜歡魚,也喜歡酒 

作為獎勵,我也想將它限制在某些行,比如說第2到4行,在這種情況下,結果將是:

  1 2 3 4 1234567890123456789012345678901234567890 1 Tim喜歡啤酒< ==沒變,不在第2行和第42行之間Toms非常喜歡FISH
3鮑勃不喜歡啤酒或葡萄酒< ==不變,不在兩列之間。10 & 204 Ann喜歡FISH,也喜歡葡萄酒 

問題:有人知道(最好)免費嗎? Widows文本編輯器可以做到這一點?

關於您的“ *老得可以記住IBM大型機上的ISPF編輯器*”:我還是每天或多或少地使用(並喜歡)它……PS(如果您要開個玩笑):什麼是(簡短)如果您保存名為“ NOT”的PDS成員,則顯示(右上)ISPF消息...的確,“成員未保存” ...考慮一個名為POSSIBLY的成員的類似消息...
Windows可以使用嗎?
是的,是...看到我剛剛發布的答案...
憐憫的賞金!
道歉花了很長時間才獲獎。也許我應該增加興趣了?一個很好的答案。我確定我是幾年前找到的,但是它不是免費的。奇妙的是現在。我愛那個編輯!現在嘗試找到將使用它的IDE,以便我也可以編譯和調試:-)
您在最後一條評論中的最後一句話到底是什麼意思?
我的意思是說,這是一個很棒的編輯器,但是當我需要編碼和IDE時-我可以使用它作為編輯器,並且可以使用我的代碼並使用調試器。我懷疑,使用ISPedit可以做到這一點,但我仍然對此感到非常滿意
四 答案:
#1
+13
ComFreek
2014-06-09 16:44:16 UTC
view on stackexchange narkive permalink

Notepad ++ / 2插件:“ Python腳本”和“ ColReplace”

我為您編寫了一個自定義插件。

您需要:

  1. Notepad ++
  2. Python腳本-Notepad ++插件
  3. ColReplace –請按照以下安裝說明進行操作
  4. ol>


  • 所有三個產品都是免費的。
  • 所有三個產品(僅)在Windows上運行。
  • ColReplace可以根據行和列的限制進行替換。

ColReplace

Notepad ++的插件,它提供了行和列受限的搜索/替換功能。

我以前從未用Python編寫過代碼,因此該代碼可能不是非常pythonic。歡迎提出任何建議或改進!

安裝

  1. 將ColReplace的存儲庫下載為ZIP文件:單擊此處並將文件提取到任意位置
  2. 打開記事本++
  3. 在菜單中,單擊插件--> Python腳本-->新腳本
  4. 選擇 ColReplace.py 作為文件名,然後單擊 Save
  5. 將提取的 ColReplace.py 的內容複製到您剛剛創建的文件中在步驟#5中創建。
  6. ol>

    用法

    1. 在菜單中,單擊插件-->腳本--> ColReplace 。
    2. 出現的對話框應該是不言自明的。
    3. ol>

      屏幕截圖

      誠然,可以改善用戶體驗:)

      Screenshot #2 Screenshot #3 Screenshot #4 Screenshot #5

不管我個人有多少記事本++都不感興趣,簡單的+1並不能解決從提出可用軟件問題到發布自定義開源插件來解決問題的5小時的轉換!這樣的事情會使這個站點變得很棒。
經過測試和工作!感謝1,000,000。我希望我可以為此提供一些S.O積分。當我在這裡獲得更多積分時,我會回來並獎勵這一點。如果我忘記了,請提醒我。並且,再次感謝您!
這激發了我編寫自己的一些插件的代碼(這是我應該做的第一件事)
@Mawg非常歡迎您:)非常感謝您的反饋。
嘿,@Mawg ...您似乎仍然沒有授予您在此處的第一條評論中曾承諾的“賞金”。如今,憑藉大約2.5K代表,是什麼原因使您無法通過這樣的賞金和諸如“答案之一很突出”之類的東西來授予500分?順便說一句,這樣的cmd界面是這樣的:*** c .here .there啤酒魚***(也使用線條標籤“ .here”和“ .there”,我相信您明白我的意思是...) 。
@Mawg-這是另一個提醒,既然您已經比兩年前的最後一個提醒所隱含的代表高出三倍。 ;)
對不起,我忘了。我現在已經發布了100分的賞金,但不能連續23個小時獎勵它,所以如果我也忘記了,別忘了提醒我:-)
這太誘人了,無法發布競爭性答案...
我將獎勵您SPFLite答案。感謝1,000,000
獲獎。謝謝大家的提醒:-)我想我記得大約10年前見過SPFlite,但那時並非免費。當然,這正是我想要的。
@JohnY看看發生了什麼:-)我投票失敗,另一個人懸賞。我可以接受後者,但是前者是不幸的。
@ComFreek-您說得對,很抱歉,這樣解決了。我至少(超過)取消了你的反對意見。這個*應該*下降的方式是*您*得到了賞金(付出您的努力,更不用說信守諾言了),而SPFLite的答案得到了*接受*(表明這確實是對“最合適”的答案)題)。
#2
+12
Caleb
2014-06-09 17:20:21 UTC
view on stackexchange narkive permalink

vim 編輯器可以立即執行此操作¹。有一個簡單的用於gvim的 Windows安裝程序,或者可以通過 Chocolaty,cygwin等安裝各種版本。

Vim是模式編輯器,這意味著編輯器窗口可以處於幾種狀態,包括插入(您在其中輸入文本),普通(在其中擊鍵可激活可操作的命令)文本)和視覺(您可以在其中選擇文本塊)。

視覺模式可以通過以下三種方式之一選擇文本:

  • 按字符選擇一行或多行字符。

  • 按行選擇整個行。

  • 按列選擇一個以行/列位置為邊界的矩形字符塊。

在正常模式下,可以通過將光標移到矩形的一個角上來激活後者。點擊 Ctrl kbd> v kbd>,然後將光標移到另一個角。此時,您將看到該列突出顯示。

下一步,您需要發出搜索和替換命令,以在當前(或最後一個)視覺選擇中找到匹配項:

  :%s / \%Vbeer / fish / g  

請注意,這將匹配所選內容中開始的任何“啤酒”實例,即使它們終止於外部它。如果您不希望這種行為,則可以將搜索的兩個方向都錨定在選擇內容內:

 :%s / \%Vbeer \%V / fish / g  

還要注意,該命令中的前導告訴vim對整個文件進行操作。如果從可視模式直接進入命令模式(通過點擊: kbd>),則提示將預先填充前綴:'<,'> 所選範圍。可以很好地使用它,但是由於搜索和替換功能是按行操作的,因此您仍然需要使用 \%V 僅在選擇區域內進行實際匹配。

 :'<,'>s / \%Vbeer / fish / g  

要快速了解您可以使用列模式進行的其他操作,請查看此VimCast視頻

¹並不意味著您將可以直接使用編輯器。有個老笑話,如果您想要一串好的隨機文本,請使用VIM進行編程,然後讓他們退出編輯器。如果您不熟悉vim,可能不妨花一些時間使用一些入門教程,這樣您至少知道如何打開,編輯,保存和退出編輯器的基礎知識。使用範例與Windows上可能經常使用的大多數應用程序有些不同。它可能非常強大,但是在嘗試此答案中詳細介紹的更高級用法之前,請花點時間掌握基礎知識。 sub>

#3
+6
RProgram
2014-06-13 02:51:59 UTC
view on stackexchange narkive permalink

SynWrite 編輯器:如果選擇列塊(從第2行到第4行,從第10行到第20行),則可以在此選擇中執行全部替換。 (這是“替換”對話框中的選項)。

Rep dialog

+1謝謝。 http://www.uvviewsoft.com/synwrite/看起來不錯。由於我已經使用過NotePad ++,因此我可能會繼續使用它,但是其他人可能想要考慮SynWrite
#4
+2
Pierre.Vriens
2020-02-09 00:36:21 UTC
view on stackexchange narkive permalink

即使我還沒有退休,但我“年紀大到足以記住IBM大型機上的ISPF編輯器”:我仍然每天或多或少使用(並喜歡)它。 。

要真正回答您的問題,建議您看看 SPFLite。這是來自 Wikipedia的報價:

在PC環境中使用的編輯器通常以與大型大型機系統上使用的編輯器不同的方式運行。 PC編輯器幾乎都是面向字符流的,而大型機編輯器通常是面向文本行的。需要同時在PC和大型機上工作的用戶需要以兩種不同的工作方式來提高工作效率。

SPFlite是一個免費的文件管理器和文本編輯器,可在Windows PC上為那些人提供熟悉的工作環境。誰習慣了IBM基於大型機的ISPF。除了提供基本的ISPF功能兼容性之外,SPFLite還添加了擴展功能以增強編輯能力。

在編輯模式下打開文件後,您應該能夠解決(樣本)問題。僅使用此(主要)編輯命令的問題:

  c啤酒魚10 20全部 

但是,等等,還有更多...如果您願意還用(例如) .f 標記您的第2行,並用 .l 標記您的第4行,可以使用以下命令來回答獎勵問題:

  c啤酒魚10 20全部.f .l  

容易,不是嗎?



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...