private void unfoldCurrentLine(@NotNull final Editor editor) {
   final FoldRegion[] allRegions = editor.getFoldingModel().getAllFoldRegions();
   final int offset = editor.getCaretModel().getOffset();
   int line = editor.getDocument().getLineNumber(offset);
   int start = editor.getDocument().getLineStartOffset(line);
   int end = editor.getDocument().getLineEndOffset(line);
   final TextRange range = new TextRange(start, end);
   editor
       .getFoldingModel()
       .runBatchFoldingOperation(
           new Runnable() {
             @Override
             public void run() {
               for (FoldRegion region : allRegions) {
                 if (!region.isExpanded()
                     && range.intersects(
                         TextRange.create(
                             region))) /*region.getStartOffset() <= offset && offset <= region.getEndOffset()*/ {
                   region.setExpanded(true);
                 }
               }
             }
           });
 }