e- / hangul.js Goto Github PK
View Code? Open in Web Editor NEW한글 자음/모음 분리/조합 자바스크립트 라이브러리. 자바스크립트 한글 오토마타 구현체입니다.
Home Page: https://e-.github.io/Hangul.js/examples/
License: MIT License
한글 자음/모음 분리/조합 자바스크립트 라이브러리. 자바스크립트 한글 오토마타 구현체입니다.
Home Page: https://e-.github.io/Hangul.js/examples/
License: MIT License
h.assemble(['ㅃ','ㅞ','ㄹ','ㄱ'])
'쀍'
h.assemble(['ㅃ','ㅞ','ㄹ','ㄱ','ㅅ'])
'\u0000' -> Error!
h.assemble(['ㅃ','ㅞ','ㄹ','ㄱ','ㅅ', 'ㅏ'])
'쀍사'
['ㅃ','ㅞ','ㄹ','ㄱ','ㅅ'] => '쀍ㅅ' 가 되어야 하지만 '\u0000' 이 return 됩니다.
hangul-js version : 0.2.5
assemble과 disassemble 기능들을 test해볼 수 있는 페이지의 디자인을 입혀서 user로 하여금 조금 더 직관적으로 바꾸는 게 좋을 것 같습니다.
저장소 스타 100개가 넘으면 CDNjs에 등록할 수 있습니다.
등록하면 브라우저 환경에서 좀 더 편리하게 접근할 수 있습니다.
CDNjs에 등록해보는게 어떨까요?
var search = function(a, b){
var ad = disassemble(a).join(''),
bd = disassemble(b).join('')
return ad.indexOf(bd);
};
인자값 a,b가 null이 들어올때 에러가 떨어집니다.
에러처리 되었으면 좋겠습니다.
When the needle
parameter of rangeSearch()
is passed ''
(empty string) the browser hangs with an infinite loop.
rangeSearch()
should return an empty array if needle
is an empty string.
Hangul.search() 결과 값을 가지고 문자열에서 일치 되는 위치 (index) 바로 알 수 없어요. 일치된 부분만 강조 표현 하려고 하는데 일치 된 부분의 시작 위치 (또 끝 위치) 알 수 있었으면 좋겠습니다.
Hangul.indexOf() 같은 함수 만들어 봤는데, 문자열 분리전 형태 알 수 있었으면 계산이 더 쉴 것 같아요:
["ㅎ", "ㅏ", "ㄴ", "ㄱ", "ㅡ", "ㄹ"]
대신에 [["ㅎ", "ㅏ", "ㄴ"], ["ㄱ", "ㅡ", "ㄹ"]]
아래 저는 작성한 Hangul.indexOf() 공유합니다:
Hangul.indexOf = function(haystack, needle) {
var index, match, totalLetters;
match = 1 + Hangul.search(haystack, needle);
totalLetters = 0;
index = -1;
while (totalLetters < match) {
index++;
totalLetters += (Hangul.disassemble(haystack[index])).length;
}
return index;
};
안녕하세요.
패키지 사용중에 질문이 생겨 이슈에 남깁니다.
README 내용과 master 코드들을 보면 hangul.d.ts
파일이 추가가 된 것으로 보이는데,
0.2.4
릴리즈 버전에는 포함이 되어있지 않습니다.
혹시 이유가 있을까요?
좋은 패키지를 이렇게 공유해주셔서 감사드립니다. :)
#Firstly, I'd like to thank you for putting to together and sharing this fantastic tool.
Hangul.assemble(['ㅅ','ㅓ','ㅣ']); // Results in '서 ㅣ' and not '세'.
This issue concerns the following for 'Hangul.assemble()':
'ㅏ,ㅣ'
'ㅓ,ㅣ'
'ㅗ,ㅏ,ㅣ'
'ㅘ,ㅣ'
'ㅜ,ㅓ,ㅣ'
'ㅝ,ㅣ'
Added these to the 'COMPLEX_VOWELS' array might resolve this issue, however the triplets, e.g. 'ㅜ,ㅓ,ㅣ' might require this array to be completely reformatted. It seems like 'COMPLEX_VOWELS' are only diphthongs and do not accommodate triphthongs.
hangul.js, Line 64
COMPLEX_VOWELS = [
['ㅏ','ㅣ','ㅐ'],
['ㅓ','ㅣ','ㅔ'],
['ㅗ','ㅏ','ㅘ'],
['ㅗ','ㅐ','ㅙ'],
['ㅘ','ㅣ','ㅙ'],
['ㅗ','ㅣ','ㅚ'],
['ㅜ','ㅓ','ㅝ'],
['ㅜ','ㅔ','ㅞ'],
['ㅝ','ㅣ','ㅞ'],
['ㅜ','ㅣ','ㅟ'],
['ㅡ','ㅣ','ㅢ']
],
I haven't added ['ㅗ','ㅏ','ㅣ','ㅙ'], [''ㅗ,'ㅓ','ㅣ','ㅞ']
Kindly,
James Ro
#(노경진)
js 파일 코드들에 주석처리가 잘 안되어있는 것 같아서, 주석 추가하면 좋을 것 같습니다.
쌍자음 분리할지? (현재는 안함)
ㄲ -> ㄱㄱ 가 되어야 하나?
복합자음 분리할지? (현재는 함)
ㄳ -> ㄱㅅ 가 되어야 하나?
복합중성 분리할지? (현재는 함)
ㅘ -> ㅗㅏ 가 되어야 하나?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.