; 用户可自行修改，文件在AUTOLOAD文件夹下【迷你大部分多重索引文件，用户可自行修改.lsp】
(if (> (atof (getvar "ACADVER")) 17.1)  ;代码在AutoCAD2008以下版本不加载，AutoCAD2008以下版本不支持多重索引
    (progn


        ; 标注块或填充的名字
        (defun c:mini_bzmc ( / oldcmd p1 p2 txt ent )
           (mai_start nil)
           (or mai_bzmc_angle
               (setq mai_bzmc_angle -45)
           )
           (setq ent (mai_Entsel nil  "选择要标注名字的块或填充:<退出>" "没有选择到块或填充:" '((0 . "insert,hatch")) nil))
           (or ent (exit))
           (setq p1 (cadr ent)
                 ent (car ent)
                 txt (strcase (mai_dxf 2 ent))
                 p2 (getpoint p1 "\n输入文字说在点：<退出>")
           )
           (or p2 (exit))
           (setq mai_bzmc_angle
                (cadr 
                  (mai_user_mleader
                        (list (car maiindexname) (cadr maiindexname))      ; 多重索引层名和层颜色组成的表
                        "MN-DOT"                                           ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                        1                                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                        (list (caddr maiindexname) (cadddr maiindexname))  ; 前一个参数为 1或2 时，此参数为文字形名字和字高度
                        txt                                                ; "文字或块属性，逗号分隔"
                        (list p1 p2)                                      ; 两点表或索引实体名，空为输入
                        mai_bzmc_angle                                    ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                  )
                )
           )
           (mai_end)
        )



        ;椭圆块索引命令
        (defun c:mini_indexer2 ()
          (mai_last_com "mini_indexer2")
          (princ "\n椭圆块索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer2_op
              (setq mai_indexer2_op (list 
                                        (list (strcat mai_mini_path "text_lib\\装饰材料引线\\") ; 缺省词库文件路径
                                               "*.TXT"                                          ; 缺省词库文件文件格式
                                               "家具代号.txt"                                   ; 缺省词库文件
                                               "SF--,单人沙发,SOFA"                             ; 缺省文字
                                        )
                                        -45        ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                    )
              )
          )
          (setq mai_indexer2_op
               (mai_user_mleader
                    (list (car mai_zxindex_layer) (cadr mai_zxindex_layer))            ; 多重索引层名和层颜色组成的表
                    "MN-ARROW1"                        ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    0                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list "MN-INDEX-CLBH01" 1)         ; 前一个参数为 0 时，此参数为索引块名字和块比例表，1 2时为文字形名字和字高度，用户也可用自己的块
                    (car mai_indexer2_op)               ; 词库路径，类型，文件名，缺省文字
                    nil                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer2_op)             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

         ;文字在线外索引命令
        (defun c:mini_indexer6 ( / sty )
          (mai_last_com "mini_indexer6")
          (princ "\n文字在线外索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer6_op
              (setq mai_indexer6_op (list 
                                         (list (strcat mai_mini_path "text_lib\\") ; 缺省词库文件路径
                                               "*.TXT"                             ; 缺省词库文件文件格式
                                               "室内设施.txt"                      ; 缺省词库文件
                                               "吧台"                              ; 缺省文字
                                         )
                                         -45     ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                     )
              )
          )
          (setq sty (caddr maiindexname))
          (or (tblsearch "style" sty) (mai_set_style sty nil))
          (setq mai_indexer6_op
               (mai_user_mleader
                    (list (car maiindexname) (cadr maiindexname))      ; 多重索引层名和层颜色组成的表
                    "MN-ARROW2"                                           ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    2                                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list sty (cadddr maiindexname))  ; 前一个参数为 1或2 时，此参数为文字形名字和字高度
                    (car mai_indexer6_op)                              ; 词库路径，类型，文件名，缺省文字
                    nil                                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer6_op)                             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )
        
         ;文字在线外加框索引命令
        (defun c:mini_indexer3 ( / sty )
          (mai_last_com "mini_indexer3")
          (princ "\n文字在线外加框索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer3_op
              (setq mai_indexer3_op (list 
                                         (list (strcat mai_mini_path "text_lib\\") ; 缺省词库文件路径
                                               "*.TXT"                             ; 缺省词库文件文件格式
                                               "室内设施.txt"                      ; 缺省词库文件
                                               "吧台"                              ; 缺省文字
                                         )
                                         -45     ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                     )
              )
          )
          (setq sty (caddr maiindexname))
          (or (tblsearch "style" sty) (mai_set_style sty nil))
          (setq mai_indexer3_op
               (mai_user_mleader
                    (list (car maiindexname) (cadr maiindexname))      ; 多重索引层名和层颜色组成的表
                    "MN-ARROW2"                                        ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    3                                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list sty (cadddr maiindexname))  ; 前一个参数为 1或2 时，此参数为文字形名字和字高度
                    (car mai_indexer3_op)                              ; 词库路径，类型，文件名，缺省文字
                    nil                                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer3_op)                             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

        ;文字在线上索引命令
        (defun c:mini_indexer5 ( / sty )
          (mai_last_com "mini_indexer5")
          (princ "\n文字在线上索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer5_op
              (setq mai_indexer5_op  (list 
                                         (list (strcat mai_mini_path "text_lib\\") ; 缺省词库文件路径
                                               "*.TXT"                             ; 缺省词库文件文件格式
                                               "室内设施.txt"                      ; 缺省词库文件
                                               "吧台"                              ; 缺省文字
                                         )
                                         -45       ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                     )
              )
          )
          (setq sty (caddr maiindexname))
          (or (tblsearch "style" sty) (mai_set_style sty nil))
          (setq mai_indexer5_op
               (mai_user_mleader
                    (list (car maiindexname) (cadr maiindexname))      ; 多重索引层名和层颜色组成的表
                    "MN-ARROW2"                                           ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    1                                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list sty (cadddr maiindexname))  ; 前一个参数为 1或2 时，此参数为文字形名字和字高度
                    (car mai_indexer5_op)                              ; 词库路径，类型，文件名，缺省文字
                    nil                                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer5_op)                             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

         ;通用材料索引索引命令
        (defun c:mini_indexer7 ()
          (mai_last_com "mini_indexer7")
          (princ "\n通用材料索引索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer7_op
              (setq mai_indexer7_op (list 
                                        (list (strcat mai_mini_path "text_lib\\装饰材料引线\\") ; 缺省词库文件路径
                                               "*.TXT"                                          ; 缺省词库文件文件格式
                                               "专用主材.txt"                                   ; 缺省词库文件
                                               "FL,01,实木地板,900*122*18"                      ; 缺省文字
                                        )
                                        -45          ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                    )
              )
          )
          (setq mai_indexer7_op
               (mai_user_mleader
                    (list (car mai_zxindex_layer) (cadr mai_zxindex_layer)) ; 多重索引层名和层颜色组成的表
                    "MN-ARROW2"                                             ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    0                                                       ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list "MN-INDEX-CLBH03" 1)                              ; 前一个参数为 0 时，此参数为索引块名字和块比例表，用户也可用自己的块
                    (car mai_indexer7_op)                                   ; 词库路径，类型，文件名，缺省文字
                    nil                                                     ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer7_op)                                  ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

         ;多层构造说明索引命令
        (defun c:mini_indexer8 ( / sty )
          (mai_last_com "mini_indexer8")
          (princ "\n多层构造说明索引命令，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer8_op
              (setq mai_indexer8_op (list 
                                         (list (strcat mai_mini_path "text_lib\\节点多行做法索引\\室外地面铺装\\") ; 缺省词库文件路径
                                               "*.TXT"                                               ; 缺省词库文件文件格式
                                               "室外硬质铺装地面-01.txt"                             ; 缺省词库文件
                                               ""                                                    ; 缺省文字
                                         )
                                         nil     ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                     )
              )
          )
          (setq sty (caddr maiindexname))
          (or (tblsearch "style" sty) (mai_set_style sty nil))
          (setq mai_indexer8_op
               (mai_user_mleader
                    (list (car maiindexname) (cadr maiindexname))      ; 多重索引层名和层颜色组成的表
                    "MN-DOT"                                           ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    4                                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list sty (cadddr maiindexname))  ; 前一个参数为 1或2 时，此参数为文字形名字和字高度
                    (car mai_indexer8_op)                              ; 词库路径，类型，文件名，缺省文字
                    nil                                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer8_op)                             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

        ;带天花标高索引索引命令
        (defun c:mini_indexer9 ()
          (mai_last_com "mini_indexer9")
          (princ "\n带天花标高索引，用户可自行修改，源码在AUTOLOAD文件夹下文件【迷你大部分多重索引文件，用户可自行修改.lsp】")
          (or mai_indexer9_op
              (setq mai_indexer9_op (list 
                                         (list (strcat mai_mini_path "text_lib\\装饰材料引线\\") ; 缺省词库文件路径
                                               "*.TXT"                                           ; 缺省词库文件文件格式
                                               "专用主材-带天花标高.txt"                         ; 缺省词库文件
                                               "CH,00,CA,01,方块地毯,CARPT"                      ; 缺省文字
                                         )
                                         -45         ; 缺省引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
                                    )
              )
          )
          (setq mai_indexer9_op
               (mai_user_mleader
                    (list (car mai_zxindex_layer) (cadr mai_zxindex_layer))  ; 多重索引层名和层颜色组成的表
                    "MN-ARROW2"                        ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
                    0                                  ; 0 为块，1为文字在线上，2为文字在线外，3为文字在线外加框，4为多行文字
                    (list "MN-INDEX-CLBH04" 1)         ; 前一个参数为 0 时，此参数为索引块名字和块比例表，用户也可用自己的块
                    (car mai_indexer9_op)              ; 词库路径，类型，文件名，缺省文字
                    nil                                ; 两点表或索引实体名，空为输入
                    (cadr mai_indexer9_op)             ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
               )
          )
        )

    )
)
