대화식 콘솔 기반 CSV 편집기 일부만 문서에 대한

콘솔에서 CSV 파일을 편집하기위한 스프레드 시트 응용 프로그램은 개인용 컴퓨터의 가장 빠른 킬러 응용 프로그램 중 하나 였지만 그 중 일부만 문서에 대한 문서는 여전히 적습니다.

웹, 맨 페이지 및 소스 코드에서 광범위한 검색을 수행 한 후, 나는 근본적인 단점이있는 다음 세 가지 응용 프로그램으로 끝났습니다.

  • sc : abbrev. 스프레드 시트 계산기 용; vi 키 바인딩이있는 멋진 도구이지만 구분 기호로 구분 된 형식으로 내보낼 때 구분 기호가 포함 된 문자열을 따옴표로 묶지 않으며 CSV 파일을 올바르게 가져올 수 없습니다. 즉, 모든 숫자는 문자열로 해석됩니다
  • GNU oleo : 2001 년 이후로 더 이상 적극적으로 유지되지 않는 것 같습니다. 따라서 주요 Linux 배포판을위한 패키지가 없습니다.
  • 찻 주전자 : 다양한 운영 체제 용 패키지를 제공하지만 셀에 대한 반 직관적 인 이름 지정 (예 : 11 행은 1 행, 1 행인 것으로 보입니다) 및 FLTK GUI의 불필요한 코드를 사용합니다.

다양한 Emacs 모드는 또한 구분 기호를 포함하는 문자열을 인용하지 않거나 테이블 스캐 폴드를 입력하기 위해 훨씬 더 많은 타이핑이 필요합니다.

따라서 이러한 단점 중 하나 또는 다른 콘솔 기반 CSV 편집기에 대한 힌트를 극복 한 것에 대해 매우 감사하겠습니다. 실제로 셀이나 열과 행을 편집하는 계산은 필요하지 않습니다.



답변

CSV 편집기는 일반적으로 숫자를 인식합니다. 필요한 경우에만 문자열을 인용하고, 인용 된 문자열 내에 구분 기호를 허용하며 빈 셀을 축소하지 않아야합니다. 화면의

1                      2          3
col-one                           col,three
                       col two
This is a long string. 1.23456789 3.14

파일에서 이것과 관련이 있어야합니다

1,2,3
col-one,,"col,three"
,"col two",
"This is a long string.",1.23456789,3.14

Oleo는 몇 년 동안 유지되지 않았습니다. 최근 데비안 시스템에 이전 패키지를 설치했는데 어색하고 버그가 많았습니다. 일반적인 키 입력 횟수보다 많은 작업이 수행됩니다. 모든 문자열은 따옴표로 묶어야하며 수동으로해야합니다. CSV 가져 오기 필터는 문자열 내에서 쉼표를 처리 할 수 ​​없습니다. 고정밀 숫자는 원래 형식으로 유지되지 않습니다 (예 : 1.23456789는 1.234567889999999가 됨). 명령 행에서 프로세스를 종료 할 수 없도록 프로세스가 종종 실행되지 않습니다.

MacroCALC, Teapot 및 SC가 여전히 유지 관리되는 유일한 CLI 스프레드 시트 인 것 같습니다.

MacroCALC 는 CSV 파일을 깨끗하게 가져 오거나 내보낼 수 없습니다.

찻 주전자 는 조금 드문 일이지만 사용하기가 매우 쉽고 매뉴얼은 빨리 읽을 수 있습니다. CSV 가져 오기 / 내보내기는 간단합니다. 두 가지 주요 단점이 있습니다. 먼저 문자열을 자동으로 인용하지만 항상 모든 문자열을 인용합니다. 둘째, 모든 십진수를 기본 정밀도로 자르거나 확장합니다. FLTK 인터페이스는 작동하지만 버그가 있습니다.

SC는 빠르고 안정적입니다. vi와 비슷하게 작동하며 초보자에게 친숙합니다. SC 형식과 CSV를 변환하려면 외부 프로그램이 필요합니다. 이 psc도구 (CSV-> SC 만 해당)는 SC와 함께 설치되며 다음과 같이 작동합니다.

cat file.csv | psc -k -d, | sc

편집 후 Put 명령으로 파일을 저장 한 다음 ssconvertGnumeric과 함께 제공 되는 유틸리티 (SC-> CSV 만) 를 사용하십시오 .

ssconvert file.sc file.csv

나는 물건의 다양한 라운드 트립 시도 pscssconvert프로세스가 안정이 나타납니다. 숫자와 문자열이 올바르게 처리됩니다.

CSV 파일을 편집하는 다른 방법은 적절한 플러그인과 함께 텍스트 편집기를 사용하는 것입니다. Vim 버전이 더 빠르고 더 많은 기능을 가지고 있지만 EmacsVim 은 둘 다 가지고 있습니다. 강조, 열 정렬 및 블록 작업을 제공합니다. 나는 둘 다 매우 느리고 버그가 있음을 알았습니다.


답변

scim은 내가 본 것 중 최고이며 csv를 가져오고 csv를 내보낼 수 있습니다.

https://github.com/andmarti1424/scim