2012-06-11 27 views
8

MonoDevelop cho phép tạo và cài đặt các chính sách tùy chỉnh để kiểm soát tất cả các khía cạnh của định dạng mã. Tôi đã tạo chính sách cho trang web công việc của mình, có thể được áp dụng thông qua Project> Apply Policy ...Làm cách nào để tôi có thể vượt qua chính sách định dạng mã mặc định trong MonoDevelop?

Chúng tôi đang sử dụng công cụ trò chơi Unity, thường xuyên tái tạo giải pháp MonoDevelop, yêu cầu mỗi nhà phát triển áp dụng lại chính sách - kích thích và dễ bị lỗi.

Làm cách nào để đặt tệp chính sách của tôi làm mặc định cho các giải pháp MonoDevelop mới?

Ngoài ra, thông tin về chính sách áp dụng được lưu ở đâu?

Trong tệp .sln tôi thấy "$ 0.CSharpFormattingPolicy = $ 2", nhưng điều này không thay đổi sau khi áp dụng chính sách tùy chỉnh của tôi. Tôi đã so sánh tất cả các tệp dự án trước và sau khi áp dụng chính sách, và những thay đổi duy nhất là (1) tệp .userprefs được tạo, nhưng không đề cập đến chính sách và (2) tệp .pidb khác nhau, nhưng điều này có thể Không phải là nơi thông tin chính sách đi?

Tôi đang sử dụng phiên bản MonoDevelop được tích hợp với Unity 3.5.2, là phiên bản MonoDevelop 2.8.2 (trên Windows 7). (Có, 2.8.2 hơi lạc hậu và có thể Unity Technologies đã thực hiện các thay đổi đang gây ra sự cố của tôi.)

Trả lời

11

Đây là một năm sau khi câu trả lời khác, nhưng không ai trong số các công trình trên cho sự hiệp nhất, và điều này là gần phía trên cùng của tìm kiếm google.

Sau đây là các bước tôi đã phải làm theo để có được định dạng cho công việc:

  1. MonoDevelop-> Tools-> Tuỳ chỉnh Policies-> Thêm hoạch định chính sách> Chính sách mới

  2. Chỉnh sửa chính sách bên trong của cửa sổ 'Chính sách tùy chỉnh', đảm bảo rằng chính sách của bạn được chọn.

  3. Project-> Apply định chính sách> Apply Cổ hoặc Set Chính sách Tuỳ chỉnh (chọn chính sách của bạn) -> Apply

+0

Điều này thật tuyệt vời. Vì Unity tạo chính sách mặc định cho từng dự án mới, việc tạo lại kiểu tóc của tôi sẽ vô cùng bực bội. Điều này thật đúng với gì mà tôi đã tìm kiếm! – ObsidianX

+1

Điều đó áp dụng chính sách, nhưng theo kinh nghiệm của tôi, nó chỉ dính cho đến lần tiếp theo Unity tái tạo giải pháp. – yoyo

+1

Thậm chí tốt hơn, áp dụng chính sách của bạn ở cấp độ giải pháp (nhấp chuột phải vào giải pháp, sau đó chọn Tools-> Apply Policy) và lưu giải pháp dưới tên tệp mới. Bằng cách đó, Unity sẽ không ghi đè cài đặt của bạn mỗi khi nó tái tạo các dự án. –

2

Chính sách mặc định được áp dụng cho các giải pháp hoặc giải pháp mới không có chính sách. Nó có thể được chỉnh sửa trong hộp thoại Preferences/Options, nơi nó được trộn lẫn với các sở thích của người dùng: Tools-> Options trên Windows, MonoDevelop-> Preferences trên Mac. Bạn có thể xác định các chính sách vì chúng có danh sách thả xuống "Chính sách" ở đầu bảng điều khiển cho phép bạn tải từ chính sách được đặt tên.

+0

Cảm ơn mhutch, tôi đã cố gắng sử dụng các cài đặt đó, nhưng chúng không tạo sự khác biệt. Chỉnh sửa câu hỏi của tôi với nhiều thông tin hơn một chút. – yoyo

1

Tôi đã dành 30 phút để sửa lỗi này và cuối cùng tìm ra.

Trong Windows: Đến Project -> Assembly C-Sharp Options

Sau đó, thay đổi định dạng Mã từ đó!

Đi Project -> Solution Options không hoàn toàn không có gì

+0

Tôi có thể thay đổi các tùy chọn, đó không phải là vấn đề. Vấn đề là mỗi khi Unity tạo lại giải pháp của tôi, chính sách định dạng mã được đặt lại về mặc định. Tôi muốn vượt qua mặc định một số cách. – yoyo

0

Sau một năm đối phó với điều này, chúng tôi đã viết một trình soạn thảo kịch bản Unity rằng sẽ xem các tệp dự án cho các thay đổi và khi chúng thay đổi, hãy kiểm tra các mục chính sách trong dự án (XML đơn giản để phân tích cú pháp.) Nếu chúng đã lệch khỏi chính sách mong muốn của chúng tôi, chúng tôi sẽ sửa đổi chúng và ghi lại chúng với các thay đổi chính sách chính xác .Một ý tưởng khác (chúng tôi muốn thực thi một chính sách) sẽ làm điều tương tự, nhưng chỉ cần xóa các mục chính sách khỏi dự án bất cứ khi nào chúng được cập nhật và sau đó bạn sẽ không bao giờ có chính sách dự án ghi đè những gì bạn đã thiết lập ở cấp độ công cụ.

4

Goto Tools-> Options-> KeyBinding Sau đó goto Edit -> FormatDocument Sau đó gán phím tắt và bấm vào áp dụng và sử dụng nó trong tài liệu của bạn.

Các vấn đề liên quan