All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
* **formula contain text bug:** add iscell method ([89358d3](https://github.com/mengshukeji/Luckysheet/commit/89358d36045baca791f2b5e9d2152349bf5903cf))
* **formula update fix:** formula update only one level, when cell value change. Fix it ([cf6c5be](https://github.com/mengshukeji/Luckysheet/commit/cf6c5be8a45616e1002db0ff4b04b47c3ed4c38e))
* use npm dependencies ([e4bd439](https://github.com/mengshukeji/Luckysheet/commit/e4bd439a0e96dbec0cb3a45e01aaecb129fab2ad))
* **row and column width:** batch change the height and width of the selected row and column ([956bd2a](https://github.com/mengshukeji/Luckysheet/commit/956bd2a01012b429c58a14b5b88d02a02350b662))
* **cell date picker:** cell date picker and bug solve ([2996ae9](https://github.com/mengshukeji/Luckysheet/commit/2996ae9cab724714903d00e0b63022abc4a1a3b6))
* **cell hooks add:** go to document for detail ([927ff46](https://github.com/mengshukeji/Luckysheet/commit/927ff46949f688a5bcffcb3fe48dc6b4b12b61c9))
* **config:** custom menu button config ([14eb78e](https://github.com/mengshukeji/Luckysheet/commit/14eb78e153cbce726adf9e093702f9b93af1fa03))
* **fix bug with inline string rotate wrap:** add change to max, fix height error ([1988687](https://github.com/mengshukeji/Luckysheet/commit/198868719ffb19738ee5ecc1ee060a0840fa92df))
* **hide row/column:** right click menu ([8070858](https://github.com/mengshukeji/Luckysheet/commit/8070858f6c35f11ee8cf2692d8828d0e78c46d92)), closes [#37](https://github.com/mengshukeji/Luckysheet/issues/37)
* **api and config:** api exitEditMode() scroll() config defaultFontSize ([5eedc48](https://github.com/mengshukeji/Luckysheet/commit/5eedc48a764727bebe09fd626087b158b2979c1e))
* **support spanish:** support Spanish ([41c527c](https://github.com/mengshukeji/Luckysheet/commit/41c527c6f39a8cb3a99d3fc70603f29ab7ba0a82))
### Bug Fixes
* **api:** api ([14d72eb](https://github.com/mengshukeji/Luckysheet/commit/14d72ebe56a2f87f0df5d14595c60e41fe9af077))
* **image:** resize and change row or column size ([05c49a2](https://github.com/mengshukeji/Luckysheet/commit/05c49a2fad21706ee7e232fe75d213fed3724109))
* **image fuzzy:** fix it ([8fb1a88](https://github.com/mengshukeji/Luckysheet/commit/8fb1a88669d772a0067edb614e5974ada7301c9c))
* **index offset indirect fix:** improve the overall execution efficiency of the function ([7a2f8d0](https://github.com/mengshukeji/Luckysheet/commit/7a2f8d02daf2cc0180adc56dafcfb1d1f6d022ec))
* **lineheight change to 0.5:** similar to excel ([760378b](https://github.com/mengshukeji/Luckysheet/commit/760378b369b9bf71da0182ea3b413a0accb23c38))
* **more btn:** fix more btn align middle ([c5112e9](https://github.com/mengshukeji/Luckysheet/commit/c5112e9700cd89d4820cbbbefdc0e1d3d0ed940a))
* **more formats toolbar:** fix more formats toolbar can't sync with cell, fix mac delete button can't delete cell, fix can't delete cell with inline-style ([23fcb13](https://github.com/mengshukeji/Luckysheet/commit/23fcb137cb594cfb4bc6dfe2ac86d306c42427f9))
* **selection bug:** fix it ([b83447d](https://github.com/mengshukeji/Luckysheet/commit/b83447d61805192d0310b20e97821eb01b790fb7))
* **setcellvalue delete function fix:** fix it ([00b351f](https://github.com/mengshukeji/Luckysheet/commit/00b351fa0dc01c32cf9c6b8852937e7d2ceb292d))
* **sheet name contains squotes bug:** formla can not execute, when sheet name contains squotes ([fc1dd83](https://github.com/mengshukeji/Luckysheet/commit/fc1dd837d4a3d1639914923201e853e55a865143))
* **the bug with first word is space:** fix ti ([6ae8319](https://github.com/mengshukeji/Luckysheet/commit/6ae83196cb50fafbf5657104babd124fac27b818))
* **update number add quote automatically:** similar to excel ([05b01a6](https://github.com/mengshukeji/Luckysheet/commit/05b01a6c95a5d0736c51c5c1ca41e9eb463122d8))
* **validation of "0" values:** fix ([7255c51](https://github.com/mengshukeji/Luckysheet/commit/7255c51d7b46523ff423ee5560b78d18f8535821))
* **frozen,docs:** when init workbook and sheet has frozen row or column,you need init sheet's
property frozen
### Features
* **add autocalculationmerge sheet attribute:** it can auto calculate merge infomation ([f7e30cf](https://github.com/mengshukeji/Luckysheet/commit/f7e30cf946f9c5945fd7e69bf4a3273f54e2616f))
* **add force cacultion formula:** add forceCaculate parameter ([4dd82ad](https://github.com/mengshukeji/Luckysheet/commit/4dd82ad131e0a936c040852657b05ffd53e4b465))
* **api:** add some api functions ([37910ab](https://github.com/mengshukeji/Luckysheet/commit/37910abea38dc37fcb5cc5b905c7b028e3390c10))
* **api:** api ([6f7ca26](https://github.com/mengshukeji/Luckysheet/commit/6f7ca26ba22c47ed0746363dccfd1e392040aed9))
* **api:** api ([66aecbe](https://github.com/mengshukeji/Luckysheet/commit/66aecbe7fe16be03c9c62e1ebbf941c1a9f4bac7))
* **api:** provides an api for users ([b176753](https://github.com/mengshukeji/Luckysheet/commit/b176753ceacba3ab8a243bfe27c5ea8d9455d617))
* **api add:** api add ([e4198fa](https://github.com/mengshukeji/Luckysheet/commit/e4198fa5bda4f6787a3153a113d2be10cfe64fd5))
* **editor box position fit:** show diffrent position acording to align ([636046d](https://github.com/mengshukeji/Luckysheet/commit/636046dbb2f005c2e6110b3559b72a59a7c67d87))
* **mobile touch event optimized:** very smooth, good experience ([0ed0bf6](https://github.com/mengshukeji/Luckysheet/commit/0ed0bf63ba06895a2ea39c581d0180db6c0d9266))
* **new style:** new style ([5c8d603](https://github.com/mengshukeji/Luckysheet/commit/5c8d603fc41e9c214cb3dca84a147b39f2f6ce06))
* **optimization function:** setCellvalue support any cell param ([9b208e4](https://github.com/mengshukeji/Luckysheet/commit/9b208e4e2eeeaae09dbe75b245c989f98747613a))
* **protection feature:** protection feature similar to Excel ([a71c92a](https://github.com/mengshukeji/Luckysheet/commit/a71c92a5f05aaed6c3df1556a81fc1b2ed97419a))
* **zoom feature beta:** zoom in and zoom out sheet ([249aa02](https://github.com/mengshukeji/Luckysheet/commit/249aa02fa6c74eb854034ee0913a73267b6057cc))
* **zoom gui:** zoom plus and minus, restore origin, slider ([d70dab4](https://github.com/mengshukeji/Luckysheet/commit/d70dab4938ff33e1fcefdd15492279347efe6b33))
* **allowedit dont work ,when press del:** allowEdit dont work ,when press DEL ([10dccec](https://github.com/mengshukeji/Luckysheet/commit/10dcceccc7f5f04afe70adebb4db59046382abb6))
* **array unique very slow:** fix it ([20f3cb3](https://github.com/mengshukeji/Luckysheet/commit/20f3cb3e2028e455b49a4d1947ac8f02186363af))
* **big data slowly:** speed up ([5109873](https://github.com/mengshukeji/Luckysheet/commit/5109873500996ac4e17abb95899f1fe5950f33b9))
* **bug fix:** pivotTable blank title disapear, merge cell is recognized as range ([47fe25c](https://github.com/mengshukeji/Luckysheet/commit/47fe25c32107e719115a98ceef2ed97ae6161f3b))
* **change sheet scroll bar fix:** change sheet scroll bar dont restore ([02d2655](https://github.com/mengshukeji/Luckysheet/commit/02d26557a52b7cef0cb3b2b8d14996eb29fafa51))
* **cloumn and row highlight bug:** column and row highlight bar disapear ([c806211](https://github.com/mengshukeji/Luckysheet/commit/c80621118e28f711b1513c869da36989c1a70c8f))
* **fix number to column title bug:** if column title is big , it will show undefined ([2d6e73e](https://github.com/mengshukeji/Luckysheet/commit/2d6e73eb3fba5ebd85b76d22ba4ffdc9c5197b58))
* **fix wrap bug:** alt + enter twice bug ([789bab5](https://github.com/mengshukeji/Luckysheet/commit/789bab5e5d712af889577ed141387c02a049f21f))
* **float calculate bug:** fix it ([ef2a96a](https://github.com/mengshukeji/Luckysheet/commit/ef2a96a7cd6d341810b99698f26063862cf33e35))
* **fonts bug on ie:** fit it ([f9a1546](https://github.com/mengshukeji/Luckysheet/commit/f9a1546ca783c058994759dc3443d2e0d9929267))
* **format of formula cell bug fix:** if cell has format , it is no effect ([1f6ebad](https://github.com/mengshukeji/Luckysheet/commit/1f6ebad36da9de608bc32bddc945a5e3bb68528d))
* **formula -(1-2) error:** fix it ([dee2333](https://github.com/mengshukeji/Luckysheet/commit/dee2333b295aa63fae544c075a98f993c1c3e84c))
* **formula bug:** formula bug ([6c84420](https://github.com/mengshukeji/Luckysheet/commit/6c84420ad4461281ba87378af41cde0e5a7fee93))
* **formula efficiency up:** speed up ([d05151f](https://github.com/mengshukeji/Luckysheet/commit/d05151f474145cb765a60b2f118c222f8b488efb))
* **formula initialization bug:** if formula has cross sheet param, initial this ([c5f6254](https://github.com/mengshukeji/Luckysheet/commit/c5f6254bccd89a90abfa3a6d6728416983ebbb4c))
* **hide row and column fix:** add lines ([c430d66](https://github.com/mengshukeji/Luckysheet/commit/c430d6625a23b0f4b8ef903ae62e82833ed0618f))
* **hot key bug fix:** range bug when formula move selection ([f4625d1](https://github.com/mengshukeji/Luckysheet/commit/f4625d1dc38d6f69fddb0ae131d54f65bd7bcbd7))
* **inline string bug:** style lost when change cell to inline string, input error ([405d90b](https://github.com/mengshukeji/Luckysheet/commit/405d90bfec0c7b47dee64e2034aeec8686c53e32))
* **inline string finished:** fix some bus ([57e7518](https://github.com/mengshukeji/Luckysheet/commit/57e75188ffb718e92251cb9813ae47b467410889))
* **inline string space dont recognize:** fix it ([ddc5c5d](https://github.com/mengshukeji/Luckysheet/commit/ddc5c5dde9a4d4db2ee42207383d696c12c58249))
* **input range bug:** fix it ([5412721](https://github.com/mengshukeji/Luckysheet/commit/5412721675598979689e4de31ec37c2e807c7c16))
* **my english is pool:** fix ([26ff1fd](https://github.com/mengshukeji/Luckysheet/commit/26ff1fd21180e2c795dcc24ed4d4aa2d5ba1f689))
* **no fullscreen bug:** when no fullscreen , div go to top ([64f7d0e](https://github.com/mengshukeji/Luckysheet/commit/64f7d0e6c44c24f21e6e7d8d16beac6f23a5d770))
* **normal style change bug:** fit error ([f24eb7f](https://github.com/mengshukeji/Luckysheet/commit/f24eb7f69c5c9ae53832f130a27473a686720e72))
* **offset indirect formula fix:** fix bug ([d8dfe50](https://github.com/mengshukeji/Luckysheet/commit/d8dfe50782108745e5f132c0bbb1438f7180d198))
* **old chrome dont surport actualboundingboxascent:** fix it and make it beautiful ([5c503d8](https://github.com/mengshukeji/Luckysheet/commit/5c503d851945d5ece1d69c2da8fa26c330d13930))
* **pivot table change sheet bug:** if prevous sheet is pivot table and pennel is closed, change bug ([7cac8e6](https://github.com/mengshukeji/Luckysheet/commit/7cac8e62631d90bea0521498e9980234fde88fc3))
* **pivot table show error:** when column area have field and row area is null,pivot table show error ([04bc51c](https://github.com/mengshukeji/Luckysheet/commit/04bc51cf8dc5ff24fc5d71b3bbf755a9787ca57d))
* **remain cell style in inline string mode:** click cell and change cell style like to Excel ([7d0438a](https://github.com/mengshukeji/Luckysheet/commit/7d0438a10db44f371c23daccb9c066f30773e307))
* **render bug fix:** new render method ([a1bcf81](https://github.com/mengshukeji/Luckysheet/commit/a1bcf81562ebc8c8327baad01d5e814e23fae647))
* **rotate text position mistake, when sheet zoom:** fix zoom bug, fix strike and underline bug ([6680a13](https://github.com/mengshukeji/Luckysheet/commit/6680a134252a65b346b0a99142998ced277e8adf))
* **several bug and new feature:** formula calculation , quotePrefix add ([5a95304](https://github.com/mengshukeji/Luckysheet/commit/5a95304289714d130501faae352dc07fb21dbf68))
* **splines and dynamicarray bug fix:** formula calculation update is finished ([a59aa04](https://github.com/mengshukeji/Luckysheet/commit/a59aa04e4db70e3d90c6109a18ea6a7d2747c156))
* **text get wrong height when zoom:** fix height ([106f1fd](https://github.com/mengshukeji/Luckysheet/commit/106f1fd111a75778a2c61424290f33295cec9964))
* **toolbar:** menu button style ([d18478c](https://github.com/mengshukeji/Luckysheet/commit/d18478c0e11cdce994d585be216b9ad95836f073))
* **underline and cancelline:** add and fix ([d3f23ff](https://github.com/mengshukeji/Luckysheet/commit/d3f23fffd72f95b241710e9fdf1a70113502a815))
* **undo redo bug fix:** formula update bug ([373dc4f](https://github.com/mengshukeji/Luckysheet/commit/373dc4f464d8bd106408ce28bd48b9e44b310b5f))
* **gloabe improve and bug fix:** global improve and bug fix,include formula,find and replace,filter ([e6cfa31](https://github.com/mengshukeji/Luckysheet/commit/e6cfa3156ac2ec8989f3716601dc27bcfbdc4d13))
* **globalization fix:** pivot table , drop cell ([55d4cf2](https://github.com/mengshukeji/Luckysheet/commit/55d4cf29868787a94377ea2e659da9e74e062628))
* **rightclick menu perfect:** add rows and cols delete rows and cols hide rows and cols ([32f94a7](https://github.com/mengshukeji/Luckysheet/commit/32f94a72285d6051df87ce45390cb4e5a4cc49b2))
* **scroll style fix beautify:** scroll,sheet color and style ([63f2630](https://github.com/mengshukeji/Luckysheet/commit/63f2630b95ab811807199670db6eee332af882a8))
* **split handler.js to small file:** split handler.js file to seven files ([0a62ff0](https://github.com/mengshukeji/Luckysheet/commit/0a62ff0565d4116ae66a758386ef8d84dcfceba5))
* **zh en:** zh en ([040bfe4](https://github.com/mengshukeji/Luckysheet/commit/040bfe4b456eb910dc7ddbcc3f5ae0e42d440951))
* **mac scroll x reverse fix:** mac scroll x reverse fix and scroll optimization ([8eb68e8](https://github.com/mengshukeji/Luckysheet/commit/8eb68e82e2898b1be2702f463c326a304bc96106))
[](https://gitter.im/mengshukeji/Luckysheet?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[Luckysheet Server Starter]: https://github.com/mengshukeji/LuckysheetServerStarter
## Features
- **Formatting**: style, conditional formatting, text alignment and rotation, text truncation, overflow, automatic line wrapping, multiple data types, cell segmentation style
- **Cells**: drag and drop, fill handle, multiple selection, find and replace, location, merge cells, data verification
- **Row & column**: hide, insert, delete rows or columns, freeze, and split text
- **Operation**: undo, redo, copy, paste, cut, hot key, format painter, drag and drop selection
- **Formulas & Functions**: Built-in, remote and custom formulas
- **Tables**: filter, sort
- **Enhanced functions**: Pivot tables, charts, comments, cooperative editing, insert picture, matrix calculations, screenshots, copying to other formats, EXCEL import and export, etc.
For a more detailed feature list, please refer to: [Features](https://mengshukeji.github.io/LuckysheetDocs/guide/#features)
## 📖 Resources
- Priority reading for new users: [User Guide](https://github.com/mengshukeji/Luckysheet/wiki/User-Guide)
- For the tutorials, learning materials and supporting solutions provided by the community, please refer to: [Tutorials and Resources](https://mengshukeji.github.io/LuckysheetDocs/guide/resource.html)
## 📜 Changelog
Detailed changes for each release are documented in the [CHANGELOG.md](CHANGELOG.md).
## ❗️ Issues
Please make sure to read the [Issue Reporting Checklist](https://mengshukeji.github.io/LuckysheetDocs/guide/contribute.html#how-to-submit-issues) before opening an issue. Issues not conforming to the guidelines may be closed immediately.
## ✅ TODO
Managed with [GitHub Projects](https://github.com/mengshukeji/Luckysheet/projects/1)
## 💪Contribution
Please make sure to read the[ Contributing Guide](https://mengshukeji.github.io/LuckysheetDocs/guide/contribute.html) before making a pull request.
Luckysheet is an MIT-licensed open source project with its ongoing development made possible entirely by the support of these awesome [backers](https://mengshukeji.github.io/LuckysheetDocs/about/sponsor.html#sponsors-list). If you'd like to join them, please consider:
- [Become a backer or sponsor on Patreon](https://www.patreon.com/mengshukeji).
- [Become a backer or sponsor on Open Collective](https://opencollective.com/luckysheet).
### What's the difference between Patreon and OpenCollective?
Funds donated via Patreon go directly to support mengshukeji's work on Luckysheet. Funds donated via OpenCollective are managed with transparent expenses and will be used for compensating work and expenses for core team members or sponsoring community events. Your name/logo will receive proper recognition and exposure by donating on either platform.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.