React-ace: ์ปค์„œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์ดํŠธ์— ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2017๋…„ 11์›” 17์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: securingsincity/react-ace

์•ˆ๋…•, ๋ชจ๋‘
์ปค์„œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์ดํŠธ๊ฐ€ ์•„๋‹˜์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.
์–ด๋–ป๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ
3c634b74-650d-4cf7-a56e-f247d7e4cedd

awaiting response

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@MaximusDesign ๋‚˜๋„์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ace๊ฐ€ ๊ณ ์ • ํญ ๊ธ€๊ผด์— ์˜์กดํ•˜๊ณ  ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.
์ œ ๊ฒฝ์šฐ์—๋Š” ace๊ฐ€ ์„ค์ •ํ•œ monaco ๋ฅผ ์žฌ์ •์˜ํ•˜๋Š” ์ „์—ญ ๊ธ€๊ผด ๋ชจ์Œ ์„ค์ •์œผ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŽธ์ง‘๊ธฐ์—์„œ ๊ธ€๊ผด์„ ๊ณ ์ •ํญ ๊ธ€๊ผด๋กœ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹จ์ˆœํžˆ inherit ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” styled-components๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์†”๋ฃจ์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

const Editor = styled(AceEditor)`
    * {
        font-family: inherit;
    }
`;

๋ชจ๋“  7 ๋Œ“๊ธ€

์•ˆ๋…•ํ•˜์„ธ์š”
๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€์žˆ๋‹ค
๋ฐ๋ชจ(http://securingsincity.github.io/react-ace/)์˜ ์˜ˆ์ œ๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
๋‚ด ์ฝ”๋“œ์—์„œ fontSize = {14} ๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ ๋„์›€์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

@huangjiatian @RTKSoftware ๋‹น์‹ ์„ ๋„์šธ ์ˆ˜ ์žˆ๋Š” ์ด ํŠธ์œ—์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

CSS์˜ font-size๊ฐ€ ํŽธ์ง‘๊ธฐ ์†Œํ’ˆ์— ์ „๋‹ฌํ•œ ๊ฐ’๊ณผ ๋‹ค๋ฅธ ๊ฐ’์ผ ๋•Œ ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. CSS์—์„œ font-size๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ˆ˜์ •ํ•˜์„ธ์š”. ๋˜๋Š” ์ˆ˜์ • ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

@MaximusDesign ๋‚˜๋„์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ace๊ฐ€ ๊ณ ์ • ํญ ๊ธ€๊ผด์— ์˜์กดํ•˜๊ณ  ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.
์ œ ๊ฒฝ์šฐ์—๋Š” ace๊ฐ€ ์„ค์ •ํ•œ monaco ๋ฅผ ์žฌ์ •์˜ํ•˜๋Š” ์ „์—ญ ๊ธ€๊ผด ๋ชจ์Œ ์„ค์ •์œผ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŽธ์ง‘๊ธฐ์—์„œ ๊ธ€๊ผด์„ ๊ณ ์ •ํญ ๊ธ€๊ผด๋กœ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋‹จ์ˆœํžˆ inherit ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” styled-components๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์†”๋ฃจ์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

const Editor = styled(AceEditor)`
    * {
        font-family: inherit;
    }
`;

ํŽธ์ง‘๊ธฐ์— ์ปค์„œ๋ฅผ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•  ๋•Œ ๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ์ปค์„œ๊ฐ€ ์‹ค์ œ ์œ„์น˜์—์„œ 4์นธ ๋–จ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. @MatthewLarner ์™€ ์œ ์‚ฌํ•˜๊ฒŒ styled-components ํ–ˆ์ง€๋งŒ ๋Œ€์‹  font-family๋ฅผ Ace์˜ ๊ธฐ๋ณธ consolas ํ•˜๊ณ  ์ค„ ๋†’์ด๋ฅผ ์ค„์˜€์Šต๋‹ˆ๋‹ค.

 const StyledEditor = styled.div`
      margin-top: 10px;
      * {
        font-family: consolas;
        line-height: 1;
      }
    `;

    return (
      <StyledEditor>
        <AceEditor
        mode="json"
        theme="solarized_dark"
        fontSize={14}
        value={''}
        setOptions={{
          showLineNumbers: false,
          tabSize: 2,
        }}
        editorProps={{ $blockScrolling: true }}
      />
      </StyledEditor>
    );


๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์ง€๋งŒ ์œ„์˜ ๋ชจ๋“  ๋ฐฉ๋ฒ•์ด ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉด Origin ace์—์„œ ์†”๋ฃจ์…˜์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ์ด๊ฒƒ์„ ์–ป์—ˆ๋‹ค https://github.com/ajaxorg/ace/issues/2548 . ๊ธ€๊ผด์ด ์ปค์„œ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ๊ฒƒ์€ ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค. ๊ธ€๊ผด์„ monospace ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.
.ace_editor, .ace_editor div{ font-family:monospace }

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰