Sublime Text 3의 열을 오른쪽 정렬

Sublime Text 3의 열을 오른쪽 정렬

나는하고 싶다오른쪽Sublime Text 3(Win 8.1, FWIW)의 열에 있는 텍스트를 정렬합니다.

즉, 이것을 변환하고 싶습니다.

Time    Cash Flow
0   -500
1   100
2   200
3   300

이것에

 Time   Cash Flow
    0        -500
    1         100
    2         200
    3         300

이것의 궁극적인 목적으로

 Time   Cash Flow
-----  ----------
    0        -500
    1         100
    2         200
    3         300

간단한 테이블~에판독. alignment및 패키지를 사용해 보았지만 AlignTab이는 필요한 대로 열을 정렬하는 대신 일부 구분 기호를 정렬하는 데 특화된 것 같습니다.

이를 수행하는 데 어떤 트릭이 있습니까? vi나 Excel이 필요한 솔루션도 열려 있습니다.

답변1

좋습니다. 여기에 CVS를 내보낼 수 있는 Excel이나 기타 스프레드시트 프로그램과 관련된 솔루션이 있습니다.


당신은새로 출시된 타사 필터 "csv2table"(<- GitHub 저장소) Pandoc용.

다음과 같이도 사용 가능합니다.독립형 필터.

  1. 다음과 같이 독립형 필터를 설치하십시오.

    mkdir ${HOME}/bin
    
    wget https://gist.githubusercontent.com/baig/b69e3146251bd90d12e7/raw/d8c8171fbe0ad5543f8aaf0a134250b29c689e57/csv2table.hs \
      -O ${HOME}/bin/pandoc-csv2table.hs
    
    chmod a+x ${HOME}/bin/pandoc-csv2table.hs
    
    export PATH=${HOME}/bin:${PATH}
    
  2. 그러나 내가 선호하는 설치 방법은 다음을 통한 것입니다.cabal:

    cabal update
    export PATH=${HOME}/.cabal/bin:${PATH}
    cabal install cabal-install
    cabal install pandoc-csv2table
    

읽기csv2table 문서.

이 필터로 무엇을 할 수 있나요?

  1. 마크다운에 외부 CSV 파일을 포함할 수 있는 방법은 다음과 같습니다.

    • ...악용하거나구문이 포함된 이미지이와 같이:

      ![](/path/to/file.csv)

    • ...또는 이를 악용하여울타리 코드 블록다음과 같은 구문:

      ```` {.table source="/path/to/file.csv" <list-of-attributes>}
      ````
      
    • ...또는 다음과 같이 "분리된 테이블 섹션"에 CSV 행을 직접 삽입합니다.

      ```` {.table <list-of-attributes>}
      one,two,three
      1,2,3
      100,2000,55555
      ````
      
  2. Pandoc 명령줄 내에서 필터를 호출하면
    --filter=pandoc-csv2table
    CSV가 모든 출력 형식의 테이블로 변환됩니다.

  3. 또한 Pandoc에서 지원하는 테이블에 거의 모든 서식을 적용할 수 있습니다.

    • 속성을 사용 type="multiline"하여 multiline_table.
    • type="pipe"를 생성하는 데 사용합니다 pipe_table.
    • type="simple"를 생성하는 데 사용합니다 simple_table.
    • caption="My ***important*** caption for this table"테이블 캡션을 추가하는 데 사용합니다 . (여기에는 마크다운 형식이 포함될 수 있습니다.)
    • 열 헤더가 없는 테이블을 원할 경우 사용합니다 header="no"(제공되지 않은 경우 사용되는 기본값은 입니다 header="yes").
    • 이제 원하는 기능은 다음과 같습니다.aligns=LRCDR열 정렬(왼쪽에서 오른쪽)을 다시 왼쪽, 오른쪽, 가운데, 기본값 및 오른쪽으로 정렬하는 데 사용합니다 .

  1. 다음 my.csv파일을 고려해보세요:

    Time,"*Cash* Flow","Third column" 0,-500,loooooooooooong data field with many words 1,*100*, ***2***,`2000`,shorte **3**,30000,(second line is empty)

    (보시다시피 저는 CSV 라인의 일부 데이터 필드에 마크다운 마크업을 사용하기도 합니다!)

  2. 다음 Markdown을 고려해보세요 my.md.

    # 표제
    
     ```` {.table source="./my.csv" aligns="LRCR" type="multiline" caption="일부 ***caption***"}
     ````
    
  3. CSV 입력에서 Markdown 여러 줄 테이블 출력을 생성하려면 다음 명령을 실행하십시오.

    pandoc my.md --filter=pandoc-csv2table -t markdown
    

    다음 출력을 참조하세요.

    Markdown 출력 스크린샷

  4. CSV 입력에서 여러 줄로 구성된 테이블이 포함된 PDF 출력을 생성하려면 다음 명령을 실행하세요.

    pandoc my.md --filter=pandoc-csv2table -o my.pdf
    

    이 출력(스크린샷)을 참조하세요.

    PDF 출력 스크린샷

  5. 생성하고 싶다면"파이프 테이블"정렬을 나타내는 콜론 구문을 사용하면 Markdown과 명령줄을 약간 수정해야 합니다.

    • 마크다운 수정type="pipe"테이블 서식 옵션에 포함하려면 다음을 수행합니다 .

      # 표제
      
       ```` {.table source="./my.csv" aligns="LRCR" type="pipe" caption="일부 ***caption***"}
       ````
      
    • 명령줄 수정출력을 요청하려면 다음 을 수행하십시오 markdown_phpextra+table_captions.

      pandoc my.md --filter=pandoc-csv2table -t markdown_phpextra+table_captions

      지금 출력을 확인하세요.

      정렬-"콜론"을 포함한 <code>pipe_tables</code> 출력 스크린샷

  6. 물론 이것은 다른 모든 출력 형식에서도 작동합니다!

답변2

다른 해결책이 있습니다. Pandoc은 pipe_tables다음 형식이 필요하며 왼쪽, 가운데 및 오른쪽 정렬을 처리할 수 있습니다.

| Right | Left | Default | Center |
|------:|:-----|---------|:------:|
|   12  |  12  |    12   |    12  |
|  123  |  123 |   123   |   123  |
|    1  |    1 |     1   |     1  |

  : Demonstration of pipe table syntax.

파이프로 열을 분리하면 |작업이 끝나면 다음을 수행할 수 있습니다.

  • alignment먼저 Sublime Text 3의 패키지 에 파이프를 정렬합니다 .
  • 그런 다음 콜론을 수동으로 다시 추가하여 :원하는 정렬을 얻으세요.

이것은 @Kurt의 필터만큼 쉽지는 않지만 (강력한 곳은 아닙니다 :)) 상당히 간단합니다.

관련 정보