- Added Japanese punctuation mark (kutoten) handling to KanaAppraiser
- Defines and appraises punctuation marks using
isHankakuKutoten
andisZenkakuKutoten
, keeping them separate from Hiragana/Katakana
- Defines and appraises punctuation marks using
- Added publishing capability in
build.gradle
to directly upload release artifacts to Bintray- This allows automatic distribution to JCenter and Maven Central, making JAR download much easier for users
- Can now build using either Gradle or Ant
- Like existing Ant build process, new Gradle build process handles compilation, unit testing, coverage report, and JAR creation
- Big thanks to @knshiro for the pull request!
- He wrote the initial
build.gradle
and tweaked it to run with this repo
- Updated Travis CI build config to ensure success of both Gradle-style and Ant-style builds
- Also fixed some minor Javadoc inconsistencies caught and alerted by Gradle
javadoc
analyzer
- Added KanaAppraiser, provides numerous functions to check whether a character is hiragana, katakana, hankaku, zenkaku, ASCII, and more
- Include 100% unit test coverage for new class
- Refactor code in KanaConverter to utilize KanaAppraiser since this logic has been part of the conversion logic up until now
- Library now supports older versions of Java back to 1.5 courtesy of better compiler options specified in build.xml
- Fixed exclusion of the tilde character during zenkaku <--> hankaku ascii conversion
- Big thanks to @NotSoOldNick!
- Added basic integration testing script that tests a stand-alone Java program which includes the kanatools JAR file and calls
kanaConvert
on sample input
- Added JaCoCo code coverage report to
ant test
build process - provides line-by-line guide to which code within the source file is actually executed during unit testing - Using the info learned from JaCoCo, added coverage for a few remaining edge cases and refactored the code slightly to achieve 100% coverage for KanaConverter
- Also changed scope of
createOpsArrayFromString
to private
- Added ability to exclude certain characters from conversion in the
kanaConvert
function. - Updated EN and JA documentation accordingly.
- Setup for Travis CI auto unit testing and added the "build status" image to README
- Initial fully-operational version of KanaConverter
- Include space character conversion in zenkaku/hankaku ascii conversions (breaking with
mb_convert_kana
, but more convenient) - Collapse hankaku diacritic marks by default (breaking with
mb_convert_kana
, but more convenient). Removed operation to collapse marks (OP_COLLAPSE_HANKAKU_VOICE_MARKS
), and then added new operation to request not collapsing diacritic marks (OP_KEEP_DIACRITIC_MARKS_SEPARATE
). - Shortened names of operation constants, makes for easier calling
- Do not exclude conversion of
'
,"
, and\
when performing zenkaku or hankaku ASCII conversions (breaking with and PHP'smb_convert_kana
). This is an unnecessary safety check (MySQL and/or programmatic escaping should be left to user), and prevented users from being able to convert those three characters using this library. - Added EN/JA documentation website using GitHub Pages
- Wrote basic download/install/usage documentation in README
- Improved build process, make direct command-line based PHP testing optional (off by default for
ant test
) - Fixed bugs found in some multi-method conversions, and optimized main loop of the
convertKana
function - Added multi-method unit tests (include those unusual cases where conflicting methods are unnaturally mixed together) and error cases. Also split up unit tests into multiple files.
- Cleaned up code, added Javadocs where helpful
- Wrote basic download/install/usage documentation in README
- Beta version of KanaConverter
- Implemented remaining methods, including those related to Hankaku Katakana handling
- Re-organized code for more modularity, more effectively spliting up different logic into different functions
- Unit tests for each single method that cover each conversion types full character span, as well as a mixed input test string
- Alpha implementation of KanaConverter
- Partial functionality, handles most conversion methods except those related to Hankaku Katakana
- Unit tests for each method via JUnit